各種排序方法的效能比較

2021-04-25 22:13:26 字數 842 閱讀 9534

測試環境說明:

win-xp下,vs2008,主頻:core2 雙核2.53ghz

下面是測試的**:

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.collections;

namespace testsort

//產生隨機數

private static int generateintlist(int maxvalue)

for (int index = 0; index < intlist.capacity; index++)

return intarr;

}//選擇排序

public static void selectsort(int sourcearr)}}

}//希爾排序

public static void shellsort(int list)

list[j - 1] = t;}}

}//氣泡排序

public static void raisesort(int list)}}

}}}希爾排序測試了3次,分別是:156.26毫秒、140.625毫秒、140.625毫秒;  平均:145.84毫秒

選擇排序測試了3次,分別是:437.5毫秒、437.5毫秒、453.125毫秒,平均:442.71毫秒

氣泡排序測試了3次,分別是:609.375毫秒、609.375毫秒、609.375毫秒,平均:609.375毫秒

結論:希爾排序法 >> 選擇排序法 > 氣泡排序法

各種內排序演算法效能比較

各種內排序演算法效能比較 個人總結 穩定性最好情況 最壞情況 平均空間複雜度 確定最終位置 簡單選擇排序 屬於選擇排序 不穩定o n n 1趟 o n n 1趟 o n n 1趟 o 1 一趟排序後能確定某個元素的最終位置 直接插入排序 穩定o n n 1趟 o n n 1趟 反向有序 o n n ...

各種排序演算法的時間效能比較

include include using namespace std 氣泡排序 原理 1 比較相鄰的前後二個資料,如果前面資料大於後面的資料,就將二個資料交換。2 這樣對陣列的第0個資料到n 1個資料進行一次遍歷後,最大的乙個資料就 沉 到陣列第n 1個位置。3 n n 1,如果n不為0就重複前面...

各種內排序演算法的實現及效能比較

主要都是教材上的 只是用到了time.h庫函式以及其中的clock t類 include include includeusing namespace std templatevoid swap t a,t b templatevoid selectsort t a,int n 簡單選擇排序 tem...