目錄
1、簡單選擇排序的思想:
2、複雜度分析
3、c++實現
通過n-i次 關鍵字間的比較,從n-i+1個記錄中選出關鍵字最小的記錄,並和第i(1≤i≤n)個記錄交換。
無論最好還是最壞的情況:
空間複雜度為:o(1)
時間複雜度為:(sum(n-i),i = 1,2,...n )--> o(n*(n-1)/2)=o(n^2),
交換次數為:最好有序為0次,最壞逆序為n-1次
氣泡排序的時間複雜度為:o(n ^ 2),同時交換次數:o(n^2)
所以,總體上來說簡單排序的效能略優於氣泡排序
void selectsort(int *a, int length)
} }}int main(int argc, char **argv)
; selectsort(a, sizeof(a) / sizeof(int));
for (int i = 0; i < sizeof(a) / sizeof(int); i++)
cout << a[i] << " ";
cin.get();
return 0;
}
資料結構 簡單選擇排序
include include include include include include define maxsize 100 define elemtype int define status int using namespace std 順序表資料結構 typedef struct sq...
資料結構 考研 簡單選擇排序
簡單選擇排序是最簡單的選擇類排序,是一種不穩定排序。每次在待排序區間尋找最小的乙個元素,將它與待排序區間的第乙個元素交換,緊接著待排序區間長度 1,再尋找當前待排序區間尋找最小的乙個元素,當待排序區間剩餘乙個元素的時候,選擇排序結束。void selectsort int arr,int len 如...
大話資料結構之 簡單選擇排序
簡單選擇排序簡單選擇排序法 selection sort 就是通過n i次關鍵字間的比較,從n i 1個記錄中選出最小關鍵字的記錄,並和第i 1 i n 個記錄交換之。我們來看 void selection cort int array,int n if i min 段應該不難理解。這對陣列如 in...