直接插入排序
2016-03-05 22:01
267 查看
直接插入排序的思想:将一个记录插入到已经排好序的有序表中,从而得到一个新的、记录数增1的有序表。代码如下:
/************************************************************************/
/* 插入排序 */
/************************************************************************/
void InsertSort(int array[], int n){
int j;
for (int i = 1; i < n;++i)
{
int key = array[i];//保存关键字
for (j = i; j>0 && array[j - 1] > key;j--)
{
array[j] = array[j - 1];//往后移
}
array[j] = key;
}
}
时间复杂度:O(n^2),空间复杂度:O(1),稳定
/************************************************************************/
/* 插入排序 */
/************************************************************************/
void InsertSort(int array[], int n){
int j;
for (int i = 1; i < n;++i)
{
int key = array[i];//保存关键字
for (j = i; j>0 && array[j - 1] > key;j--)
{
array[j] = array[j - 1];//往后移
}
array[j] = key;
}
}
时间复杂度:O(n^2),空间复杂度:O(1),稳定
相关文章推荐
- 浅析直接插入排序与折半插入排序
- 直接插入排序
- 排序算法(快速排序、直接插入排序、直接选择、冒泡排序)
- 排序算法_C++(一)插入排序之直接插入排序
- 三种最简单基础的排序 选择排序 冒泡排序 直接插入排序 运用了函数指针数组
- 线性表创建插入删除及各种排序算法实现
- Java实现插入排序
- 内部排序算法
- 直接插入排序
- 直接插入排序
- 直接插入排序
- Internal Sorting: Straight insertion: Sorting by Insertion
- 插入排序(java)
- 直接插入排序
- PHP数据结构(4) 直接插入排序
- 排序算法——插入排序
- (数据结构排序的实验四)快速,冒泡,简单选择,直接插入排序的c语言实现!!
- 数据结构 - 直接插入排序(Straight Insertion Sort) 详解 及 代码(C++)
- 【数据结构之排序2】直接插入排序
- 简单的排序算法代码实现