各類排序演算法

2021-05-23 02:05:08 字數 543 閱讀 6975

快速排序

void quicksort(int data,int low,int high)

}if(a[k]!=a[i])}}

冒泡法:

void maopao(int a,int num)//num元素個數}}

歸併排序:

插入排序

//#include "stdafx.h"

#includeusing namespace std;

#define length(arr) (sizeof(arr)/sizeof(arr[0]))

void output(int arr,int n)

arr[j]=temp;

} }}int _tmain(int argc, _tchar* argv)

; int n=length(a);

output(a,n);

insert_sort(a,n);

output(a,n);

getchar();

return 0;

}

各類排序演算法比較

排序演算法 重點時間複雜度 穩定性直接插入排序 將待插入元素插入到已有序序列中的某個合適位置,得到新有序序列 最壞情況下o n n y折半插入排序 在決定當前元素插入位置時不採用插入查詢的方式,而是二分查詢 相比直接插入,比較的次數明顯減半,但移動的次數沒有減少。所以還是o n n y二路插入排序 ...

各類排序演算法比較分析

基本上排序演算法,基於選擇的排序除了希爾,快排,歸併,堆排序之外沒啥實用性,只不過是練手的工具罷了,像 o n 2 這樣過高的時間複雜度,已經失去了它的實用意義了 排序類別 排序演算法 平均時間複雜度 最好情況 時間複雜度 最壞情況 時間複雜度 空間複雜度 穩定性適用場景 交換排序 氣泡排序 o n...

各類排序演算法的比較 摘抄

按平均時間將排序分為四類 1 平方階 o n2 排序 一般稱為簡單排序,例如直接插入 直接選擇和氣泡排序 2 線性對數階 o nlgn 排序 如快速 堆和歸併排序 3 o n1 階排序 是介於0和1之間的常數,即0 1,如希爾排序 4 線性階 o n 排序 如桶 箱和基數排序。各種排序方法比較 簡單...