02_插入算法
来源:互联网 发布:龙珠直播软件 编辑:程序博客网 时间:2024/06/05 18:27
插入排序(从小到大排序)算法解析:
其实就是将数组分成两批,第一批是有序的数组,第二批是待排序的数组;将后面待排序的每个数组元素与第一批有序的数组比较,当满足条件时候插入即可。
例如:先假设第一批有序数组是一个元素,然后再后面的9个元素中取第一个与之比较,如果小于第一个有序数组的第一个元素,就将有序数组的最后一个元素退后一位;以此类推,依次将无序数组中第一元素与有序数组中的最后一个到有序数组中的第一个比较。
void wei::Chen::showArr(int arr[], int len) { for (int i = 0; i < len; ++i ) { cout << arr[i] << " "; } cout << endl;}void wei::Chen::insertSort(int arr[], int len) {/*假设有序数组的起始元素只有一个就是arr[0]*/ for( int i = 1; i < len; ++i ) { /*1、使用临时变量temp来保存无序数组的第一个元素,后边在移动时候会替换这个位置(条件满足时) *2、使用k变量保存下标, */ int temp = arr[i]; int k = i; for( int j = i - 1; j >= 0; --j ) { if( arr[j]>temp ) { arr[k] = arr[j]; k = j; }else{ break ; } } arr[k] = temp; }}
阅读全文
0 0
- 02_插入算法
- 算法_插入式排序法(02)
- 算法_插入排序
- 算法导论_插入排序
- 算法_排序_插入排序
- 排序算法_插入排序、归并算法
- 数据结构(C#)_排序算法(插入排序)
- 数据结构(C#)_排序算法(插入排序)
- 排序算法_直接插入排序
- 排序算法(2)_插入排序
- 排序算法-插入排序_希尔排序
- 排序算法1_直接插入排序
- 数据结构与算法_插入排序
- 排序算法-插入排序_直接插入排序
- 排序算法-插入排序_二分法插入排序
- 算法导论第二章_插入排序_读书笔记
- stl的string的典型操作_初始化_遍历_连接_和字符指针转化_查找替换_删除_插入_常用算法
- 【算法】_009_插入排序_二分查找优化
- Cocos2d-x下Lua调用自定义C++类和函数的最佳实践
- 写给迷茫的程序员
- vlayout源码思路解析
- 和文本框有关的练习(JTextArea和document)
- spring 加载自定义配置
- 02_插入算法
- JAVA设计模式-策略模式应用实例
- 特长生模拟——遭遇战
- 爱测未来开发-InfluxDB使用
- leetcode palindrome-number(判断一个数字是否是回文)
- 共享手机 馅饼还是陷阱
- Http请求中Content-Type讲解以及在Spring MVC中的应用
- 买装备(特长生准备)
- 成员变量和局部变量