排序演算法 九大排序演算法總結

2021-08-06 05:04:45 字數 643 閱讀 5687

參考部落格:【排序演算法】:直接插入排序

時間複雜度:

空間複雜度:o(1)

穩定性:穩定

參考部落格:【排序演算法】:希爾排序

時間複雜度:

空間複雜度:o(1)

穩定性:不穩定

參考部落格:【排序演算法】:選擇排序

時間複雜度:

空間複雜度:o(1)

穩定性:不穩定

參考部落格:【排序演算法】:堆排序

時間複雜度:

空間複雜度:o(1)

穩定性:不穩定

參考部落格:【排序演算法】:氣泡排序

時間複雜度:

空間複雜度:o(1)

穩定性:穩定

參考部落格:【排序演算法】:快速排序

時間複雜度:

空間複雜度:o(lgn)

穩定性:不穩定

參考部落格:【排序演算法】:歸併排序

時間複雜度:

空間複雜度:o(n)

穩定性:穩定

參考部落格:【排序演算法】:計數排序

時間複雜度:o(n)

空間複雜度:o(最大數 - 最小數)

穩定性:穩定

時間複雜度:o(n*位數)

空間複雜度:o(n)

穩定性:穩定

演算法 九大排序演算法總結

這裡我不採用陣列來進行排序,而是採用更加符合應用的資料結構來排序。define m 100 typedef int datatype typedef struct nodetable 這是一種簡單描述,更加詳細的資料機構應該是下面這樣 但是為了方便描述還是使用上面的簡單結構 define m 100...

九大排序演算法

常見的排序分為兩類,一類是內部排序 直接插入排序 希爾排序 簡單選擇排序 堆排序 氣泡排序 快速排序 歸併排序 基數排序 一類是外部排序。當n較大時,應該使用時間複雜度為o nlog2n 的排序,如快速排序 堆排序 歸併排序。快排是基於比較的內部排序中,最好的方法。假設陣列為r 0 r n 1 第一...

九大排序演算法

重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越大的元素會經由交換慢慢 浮 到數列的頂端,故名。package com.demo.main 氣泡排序 public c...