1.Insertion sort
假定一串已经排序好的数列,array A, 插入 An, 使新的数列也排序OK,依次排序,则整个数列就排序OK。
当数列个数为1时,排序OK。从而整个数列排序从1个,2个。。。直到排序结束。
INSERTION-SORT(A) 1 for j ← 2 to length[A] 2 do key ← A[j] 3 ▹ Insert A[j] into the sorted sequence A[1 ‥ j - 1]. 4 i ← j - 1 5 while i > 0 and A[i] > key 6 do A[i + 1] ← A[i] 7 i ← i - 1 8 A[i + 1] ← key
源代码:
/******************************************************************** *best o(n) *hard o(n2) **********************************************************************/ void insert_sort_algorthms(char* T) { int j,i =0; int len,key = 0; len = strlen(T); i =0; for(j=1;j<len;j++) { key = T[j]; i =j-1; while(i>=0 &&T[i]>key) { T[i+1] = T[i]; i = i-1; T[i+1] = key; } } }
版权声明:本文为博主原创文章,未经博主允许不得转载。