入學c,開始熟悉gcc,g++,熟悉演算法
/*2011-9-18
writen by qiya
*/#include
#include
#include
const int size = 10;
void insert_sort(int a, int n)
j = j+1; a[j] = key; }
}int main()
for(i = 0; i < size; i++)
printf("\n");
insert_sort(a, size);
for(i = 0; i < size; i++)
printf("\n");
return 0;
折半插入排序
可以減小比較次數,但最壞時間還是o(n^2)
#include
#include
#include
const int size = 20;
int binary_search(int a, int left, int right, int key)
return right + 1;}
void binary_insert_sort(int a, int n)
}int main()
for(i = 0; i < size; i++)
printf("\n");
binary_insert_sort(a, size);
for(i = 0; i < size; i++)
printf("\n");return 0;
}
插入排序 InsertSort
插入排序 insertion sort 的基本思想是 每次將乙個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子檔案中的適當位置,直到全部記錄插入完成為止。插入排序步驟 1.在有序序列中查詢插入點 2.從插入點開始向後移動資料 1 2可合併,邊查詢邊移動資料 3.插入資料 插入排序根據查詢插入點...
插入排序(InsertSort)
首先舉乙個和插入排序有關的例子 現在桌上有一副撲克,要求我們要有序的放在手上,所以我們就要在拿牌的同時,用拿起來的牌與手中已經存在的牌作比較,並且之後把這張牌放在合適的位置。所以,當我們面對的是一組資料的時候我們也可以使用這種思路來對這組資料進行排序。首先我們要拿出乙個數字來做為與其他資料進行比較的...
InsertSort 插入排序
插入排序的過程我們可以模擬 打牌時理牌 的過程,假如手中已有 3 7 9,又拿到一張 6,那麼我們怎麼找6的位置 呢?先與 9 比較,發現比9小,則互換位置 然後和 7 比,發現比 7 小,則互換位置,再和 3 比較,比 3 大,至此比較 結束,弄清楚了這個流程,就好寫了。for i 1 to le...