插入排序--直接插入排序
2011-08-06 16:21
218 查看
直接插入排序(Straight Insertion Sort)是一种最简单的排序方法,它的基本操作是将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表。时间复杂度为O(n^2)。理解:依次将每个待排序的记录插入到一个有序序列的合适位置。插入的位置是和有序序列的每一个元素进行比较,确定待插入位置。将移动待插入位置及后面的元素一次后移一个位置,最后将待插元素插入到插入位置。
template<typename T> void insert_sort(vector<T>& array,const int length) { if (length < 2) return ; for(int j = 1;j < length;j++) { T key = array[j]; int i = j - 1; while ((i >= 0) && (array[i] > key)) { array[i + 1] = array[i]; i--; } array[i+1] = key; } }
相关文章推荐
- java实现排序算法之插入排序(直接插入排序,折半插入排序,希尔排序)
- 插入排序——直接插入排序
- 数据结构之插入排序--直接插入排序
- 【Java常用排序算法】插入排序(直接插入排序、希尔排序)
- PHP 插入排序 -- 直接插入排序
- 基本排序(二)插入排序(直接插入、Shell、折半)
- 插入排序(一)—直接插入排序
- 排序算法-插入排序_直接插入排序
- 排序算法(插入排序)——直接插入排序
- 常用排序算法之插入排序 ( 直接插入排序、希尔排序 )
- 插入排序(一)——直接插入排序(稳定的排序)
- 各种排序算法汇总(插入排序:直接插入排序、折半插入排序、希尔排序)
- 插入排序(直接插入排序、希尔排序)
- 第15周 数据结构例程——插入排序之直接插入排序
- 【算法拾遗(java描述)】--- 插入排序(直接插入排序、希尔排序)
- 简单排序算法:直接插入排序(插入排序)
- java实现排序算法之2-路插入排序,直接插入排序,折半插入排序
- 插入排序(直接插入排序,希尔排序)
- 插入排序(直接插入排序,折半插入排序,2路插入排序)
- 数据结构-排序: 插入排序(直接插入排序法)