插入排序
来源:互联网 发布:python编程(第四版) 编辑:程序博客网 时间:2024/05/16 05:20
插入排序:把后面的元素插入到前面(前面的元素要往后挪一个位置)
代码比较简单,思路也很简单。当部分的子序列已经有一定顺序的时候,插入排序是很快的。
代码:
#include <iostream>using namespace std;void InsertSort(int n, int *array){ int i = 0; int j = 0; int k = 0; for(i = 1/*从第二个元素开始,向前比较*/; i < n; ++i) { //k代表当前位置,需要被排序的元素 k = array[i]; for(j = i - 1; j >= 0 && array[j] > k;) { //如果k比前面的小,就把序列继续往后挪 array[j + 1] = array[j]; --j; } array[j + 1] = k; }}int main(){ int array[4] = {3, 2, 5, 8}; InsertSort(4, array); int i = 0; for(i = 0; i < 4; ++i) { cout << array[i] << " "; } cout << endl; return 0;}
0 0
- 插入排序-【插入排序】
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- 插入排序
- urllib2模块之异常处理
- [BestCoder] Round #4
- python 之 os
- __asm__ __volatile__("": : :"memory")
- java输出2至100内的质数
- 插入排序
- C语言关键字 (一)
- PB 如何把结构作为参数传递
- [BestCoder] Round #5
- CF #289 E. Pretty Song
- 浅层网路regression杂记
- [BestCoder] Round #6
- 逻辑推断
- .bash_profile和.bashrc的区别(如何设置生效)