排序算法
一、插入排序(Insert Sorting)
原理:
插入排序的原理:从序列中第二个数A开始,将A,插入前面已经排好的序列中,形成一个新的排序好的序列,以此类推到最后一个元素。
运行时间:
1. 输入。正序 or 逆序。
2.输入的大小。
最坏情况:逆序。
时间复杂度:O(n^2)。算术级数。
代码:
void insertSort(int *array, int len)
{
int i, j, temp;
for(i = 1; i < len; i ++)
{
temp = array[i];
for(j = i - 1; j >= 0; j --)
{
if(array[j] > temp)
{
array[j + 1] = array[j];
}else
{
break;
}
}
array[j + 1] = temp;
}
}
一、归并排序(Insert Sorting)
定义:建立在归并操作上的一种有效的排序算法。
思想:分而治之(Divide and Conquer)
代码: