算法实践- 插入排序
2011-05-08 00:00
330 查看
/** * 插入排序可以形象比喻为,打牌时候的抓牌情景。从抓第一个牌开始,把抓到的牌按一定顺序放在左手中,直到抓牌结束。手中的牌就是按照一定顺序排序后的牌。<br/> * 当面对一个集合时候,使用同样的思想。将集合分成2不部分,排序和未排序, 每次从未排序部分选择一个插入到已排序好的部分中. * * @param array */ public static void sort(int[] array) { // 一次遍历 for (int i = 1; i < array.length; i++) { // 将该数字插入到已经排序的数组中 int temp = array[i]; int j = i - 1; // 寻找插入排序索引 j的位置,并且将所有数向右移动一位 while (j > 0 && array[j] > temp) { array[j + 1] = array[j]; j--; } // 插入排序部分 array[j] = temp; } }
相关文章推荐
- 算法实践篇-插入排序
- 算法实践篇-基于插入排序的桶排序
- 程序算法艺术与实践:经典排序算法之插入排序
- 数据结构&算法实践—【排序|插入排序】插入排序
- 数据结构&算法实践—【排序|插入排序】插入排序
- 八大种必知排序算法(二) 选择排序,插入排序,希尔算法
- 深度学习算法实践2---线性代数和Numpy的使用
- C#算法基础之插入排序
- 群蚁算法理论与实践全攻略——旅行商等路径优化问题的新方法【附C#群蚁算法完整项目代码】
- MIT:算法导论——1.算法分析——插入排序 vs 二路归并排序
- 美团推荐算法实践:机器学习重排序模型成亮点
- 算法之插入排序
- 实践项目的常见算法
- [算法学习笔记]排序——插入排序
- 【算法系列】——代码实践动态规划
- 算法---冒泡排序,快速排序,二分查找(折半查找),选择排序,插入排序
- 【算法】 插入排序
- [数据结构和算法]插入排序
- 程序算法艺术与实践:递归策略之递归,循环与迭代
- 第13周上机实践项目 - 验证算法(5)拓扑排序算法验证