希爾排序思想分析

2021-08-29 12:32:24 字數 676 閱讀 2068

這個圖可能一下子看不懂  現在來解釋一下

解釋:第一趟  第1個和第6個比較 ,排序

第2個和第7個比較,排序

第3個和第8個比較,排序       以此類推直到所有的都排好

第二趟   第1個  第3個  第5個  第7個  第9個    一起比較 排序

第2個  第4個  第6個  第8個  第10個  一起比較 排序

第三趟   都排序

優劣:

1. 不需要大量的輔助空間,和歸併排序一樣容易實現。

2. 希爾排序的時間複雜度與增量序列的選取有關,例如希爾增量時間複雜度為o(n²),而hibbard增量的希爾排序的時間複雜度為o(

3. 希爾排序沒有快速排序演算法快 o(n(logn)),因此中等大小規模表現良好,對規模非常大的資料排序不是最優選擇。

4. 希爾演算法在最壞的情況下和平均情況下執行效率相差不是很多,而快速排序在最壞的情況下執行的效率會非常差。

希爾排序基本思想

基本思想 先取乙個小於n的整數d1作為第乙個增量,把檔案的全部記錄分成d1個組。所有距離為dl的倍數的記錄放在同乙個組中。先在各組內進行直接插人排序 然後,取第二個增量d2 1重複上述的分組和排序,直至所取的增量dt 1 dt t l 2 1 即所有記錄放在同一組中進行直接插入排序為止。該方法實質上...

希爾排序思想及實現

希爾排序以插入排序為基礎,不同的或者說改進的地方是,插入排序或者其它排序解決不了資料太大的陣列,那樣會非常費時,而如果讓插入排序在乙個乙個向前插入之前使其部分有序,即讓它先以h的間隔有序,最後再執行一次插入排序會不會更快呢?答案是會的。1 主要思想 以上面說的為例,讓陣列以h為間隔進行插入排序,h ...

希爾排序法基本思想

希爾排序 shell sort 又稱為 縮小增量排序 是1959年由d.l.shell提出來的。該方法的基本思想是 先將整個待排元素序列分割成若干個子串行 由相隔某個 增量 的元素組成的 分別進行直接插入排序,然後依次縮減增量再進行排序,待整個序列中的元素基本有序 增量足夠小 時,再對全體元素進行一...