插入排序和选择排序
来源:互联网 发布:晶体结构优化有什么用 编辑:程序博客网 时间:2024/05/21 18:40
插入排序模拟事例:
待排序的数组时桌面上的一叠扑克牌。现在要对其进行排序:
在桌面上随便抽一张放在手上,很明显一张牌已拍好序。
在桌面上再随便抽一张上来,这一次需要和手上的牌进行比较,看是放在牌的前面还是后面。
在桌面上再随便抽一张牌上来。这次和桌面上也拍好序的牌比较,从后到前的比较。如果有大于新抽上来的牌的话,那么大于的牌位置就要发生改变了。
伪代码:
A [p,r]
for(j = p + 1;j < r;++j)
i = j - 1;
key = A[j];
while(i > 0 && A[i] > key)
A[i + 1] = A[i];
i = i - 1;
A[i + 1] = key;
选择排序:
待排序数组是桌面上的一叠扑克牌。现对其进行排序:
在桌面上找出最小的一张扑克牌,放在手上。
再在桌面上找第二小或相等的放在手上,如此继续,由于每次选的牌是由小到大,所以放在手上的牌位置不会在发生变化了。
A[p,r]
for(i = p;i < r;++i)
key = A[i];
index = i;
for(j = i + 1;j < r;++j)
if key > A[j]
index = j;
key = A[j];
tmp = A[i];
A[i] = key;
A[index] = tmp;
- 插入排序和选择排序
- 选择排序和插入排序
- 选择排序和插入排序
- 选择排序和插入排序
- 选择排序和插入排序
- 插入排序和选择排序
- 选择排序和插入排序
- 插入排序和选择排序
- 选择排序和插入排序
- 选择排序和插入排序
- 插入排序和选择排序
- 选择排序和插入排序
- 选择排序和插入排序
- 选择和插入排序
- 冒泡排序 选择排序和插入排序
- 冒泡排序、插入排序和选择排序
- 冒泡排序和插入排序,选择排序
- 插入排序,选择排序和快速排序
- Bf561与dm365比较学习(3):coLinux磁盘准备
- SSH中关于WARN No appenders could be found for logger的解决方法
- EasyTools的AjaxTextBox
- 百万级访问网站前期的技术准备(上)
- Bloom Filter概念和原理
- 插入排序和选择排序
- 百万级访问网站前期的技术准备(中)
- 百万级访问网站前期的技术准备(下)
- mysql 正则表达式手册
- 枚举在SWT界面编程中的应用
- 通过FxCop来验证.NET编码规范
- C#实现两个N*N矩阵的乘法,矩阵必须由一维数组表示
- RCP:使用了Job框架,仍无法弹出进度框?
- 致命的逆行,危险的跟车(图)