一、穩定排序演算法1、氣泡排序2、雞尾酒排序3、插入排序4、桶排序5、計數排序6、合併排序7、基數排序8、二叉排序樹排序二、不穩定排序演算法1、選擇排序2、希爾排序3、組合排序4、堆排序5、平滑排序6、快速排序排序(Sorting) 是計算機程式設計中的一種重要操作,它的功能是將一個數據元素(或記錄)的任意序列,重新排列成一個關鍵字有序的序列。一個排序演算法是穩定的,就是當有兩個相等記錄的關鍵字R和S,且在原本的列表中R出現在S之前,在排序過的列表中R也將會是在S之前。不穩定排序演算法可能會在相等的鍵值中改變紀錄的相對次序,但是穩定排序演算法從來不會如此。不穩定排序演算法可以被特別地實現為穩定。做這件事情的一個方式是人工擴充鍵值的比較,如此在其他方面相同鍵值的兩個物件間之比較,就會被決定使用在原先資料次序中的條目,當作一個同分決賽。然而,要記住這種次序通常牽涉到額外的空間負擔。擴充套件資料:排序演算法的分類:1、透過時間複雜度分類計算的複雜度(最差、平均、和最好效能),依據列表(list)的大小(n)。一般而言,好的效能是 O(nlogn),且壞的效能是 O(n^2)。對於一個排序理想的效能是 O(n)。而僅使用一個抽象關鍵比較運算的排序演算法總平均上總是至少需要 O(nlogn)。2、透過空間複雜度分類儲存器使用量(空間複雜度)(以及其他電腦資源的使用)3、透過穩定性分類穩定的排序演算法會依照相等的關鍵(換言之就是值)維持紀錄的相對次序。
一、穩定排序演算法1、氣泡排序2、雞尾酒排序3、插入排序4、桶排序5、計數排序6、合併排序7、基數排序8、二叉排序樹排序二、不穩定排序演算法1、選擇排序2、希爾排序3、組合排序4、堆排序5、平滑排序6、快速排序排序(Sorting) 是計算機程式設計中的一種重要操作,它的功能是將一個數據元素(或記錄)的任意序列,重新排列成一個關鍵字有序的序列。一個排序演算法是穩定的,就是當有兩個相等記錄的關鍵字R和S,且在原本的列表中R出現在S之前,在排序過的列表中R也將會是在S之前。不穩定排序演算法可能會在相等的鍵值中改變紀錄的相對次序,但是穩定排序演算法從來不會如此。不穩定排序演算法可以被特別地實現為穩定。做這件事情的一個方式是人工擴充鍵值的比較,如此在其他方面相同鍵值的兩個物件間之比較,就會被決定使用在原先資料次序中的條目,當作一個同分決賽。然而,要記住這種次序通常牽涉到額外的空間負擔。擴充套件資料:排序演算法的分類:1、透過時間複雜度分類計算的複雜度(最差、平均、和最好效能),依據列表(list)的大小(n)。一般而言,好的效能是 O(nlogn),且壞的效能是 O(n^2)。對於一個排序理想的效能是 O(n)。而僅使用一個抽象關鍵比較運算的排序演算法總平均上總是至少需要 O(nlogn)。2、透過空間複雜度分類儲存器使用量(空間複雜度)(以及其他電腦資源的使用)3、透過穩定性分類穩定的排序演算法會依照相等的關鍵(換言之就是值)維持紀錄的相對次序。