直接插入排序,氣泡排序,快速排序,選擇排序,歸併排序,堆排序
#include#include#include#include#include#includeusing namespace std;
// 插入排序
void insertsort(int a, int n)
a[j+1] = temp; }}
// 氣泡排序
void bubblesort(int a, int n)
}// 快速排序
void quicksort(int a, int l, int r)
while(i < j && a[i] <= temp)
i++;
if(i < j)
} a[i] = temp;
quicksort(a, l, i-1);
quicksort(a, i+1, r); }}
// 選擇排序
void selectsort(int a, int n)
int temp = a[i];
a[i] = a[k];
a[k] = temp;
}} // 歸併排序
void mergearray(int a, int first, int mid, int last, int temp)
while(i <= n)
temp[k ++] = a[i ++];
while(j <= m)
temp[k ++] = a[j ++];
for(int i = 0; i < k; i++)
a[first + i] = temp[i];
}void mergesort(int a, int first, int last, int temp)
}// 堆排序 序號從1開始
void sift(int a, int l, int r)
else
break;
} a[i] = temp; // 該節點最終的位置
}void heapsort(int a, int n) }
int main()
資料結構 排序
小小總結了下 希望別不記得 排序型別 排序方法 平均時間 最壞時間 最好時間 穩定空間 插入直接插入 o n2 o n2 o n 穩定o 1 希爾排序 o n3 2 增量序列最後為1,只有公因子1 不穩o 1 選擇簡單選擇 o n2 o n2 o n 穩定o 1 堆排序o n lb n o n lb...
資料結構 排序
郝斌版 資料結構 學習筆記 冒泡 公升序,12比,大放後面,再23比,直至最大的在最後面 插入 2,3,4,依次插入值,保證插入值後的序列為有序的 選擇 後面所有的最小值依次排到最前 快速排序 歸併排序 22排,44排,88排.排序演算法標準 時間,空間,穩定性 排序和查詢的關係 排序是查詢的前提,...
資料結構 排序
1.希爾排序 shellsort 增量序列d n為要排序數的個數 void shellinsertsort int a,int n,int dk n個要排序的數,dk是增量 2 堆排序 已知h s m 除了h s 外均滿足堆的定義 調整h s 使其成為大頂堆.即將對第s個結點為根的子樹篩選,para...