#include using namespace std;
void qsort(int a, int low, int high)
int first = low;
int last = high;
int key = a[first];/*用字表的第乙個記錄作為樞軸*/
while(first < last)
a[first] = a[last];/*將比第乙個小的移到低端*/
while(first < last && a[first] <= key)
a[last] = a[first];
/*將比第乙個大的移到高階*/
}a[first] = key;/*樞軸記錄到位*/
qsort(a, low, first-1);
qsort(a, first+1, high);
}int main()
; qsort(a, 0, sizeof(a) / sizeof(a[0]) - 1);/*這裡原文第三個引數要減1否則記憶體越界*/
for(int i = 0; i < sizeof(a) / sizeof(a[0]); i++)
return 0;
}/*參考資料結構p274(清華大學出版社,嚴蔚敏)*/
排序演算法Day1
include mysort.h include include include include include include include using namespace std 插入排序 時間複雜度 平均哦o n 2 完全有序時o n 空間複雜度o 1 穩定 思想 把待排序列分為有序序列和無...
資料結構學習day1 快速排序
快速排序 1.設定變數i 0,j n 1,設定關鍵資料,也就是比較的資料key,key可以隨便取,也可以取key a 0 2.從j開始向前搜尋 j 找到第乙個小於key的值a j 將a j 的值賦給a i 3.從i開始向後搜尋 i 找到第乙個大於key的a i 將a i 的值賦給a j 4.重複第2...
Day1 冒泡演算法 1
bubble sort 背後的想法非常簡單,我們檢視陣列中相鄰的成對元素,一次檢視一對。如果第乙個元素大於第二個元素,則交換它們的位置,否則將它們繼續移動。def bubble sort our list for i in range len our list 1 if our list i our...