插入排序圖文講解

來源:酷知科普網 1.07W

插入排序是最簡單的排序演算法之一,對於有N個元素的序列,插入排序由N-1趟排序組成。它的工作原理是通過構建有序序列,對於未排序的資料,在已經排序序列中從後向前掃描,找到相應位置插入

操作方法

(01)排序簡介:插入排序是最簡單的排序演算法之一,對於有N個元素的序列,插入排序由N-1趟排序組成。它的工作原理是通過構建有序序列,對於未排序的資料,在已經排序序列中從後向前掃描,找到相應位置插入。

(02)演算法步驟:1.       將第一個待排序的序列的第一個元素看做一個有序序列,把第二個元素到最後一個元素當成是未排序序列。2.       從頭到尾一次掃描未排序的序列,將掃描到的每個元素插入有序序列的適當位置(在這裡需要注意一個問題,如果在有序序列中有一個和待插入的元素相等,則將待插入的元素查到此元素的後面,這樣方式的插入排序是穩定的。如果插入到此元素的前面,那麼此種方式的插入排序是不穩定的)

(03)歸納:在第L趟排序中,將位置L上的元素向左移動到它在前L+1個元素中的正確的位置上,這裡的前L個元素是有序的。

(04)圖片示例

插入排序圖文講解
插入排序圖文講解 第2張
插入排序圖文講解 第3張
插入排序圖文講解 第4張

(05)演算法分析:由於巢狀迴圈的每一個都花費N次迭代,因此插入排序的時間複雜度為O(N^2);

(06)總結:以上講解的插入排序是插入排序演算法中的直接插入排序,在有序序列中查詢插入位置的時候是逐個查詢,故稱直接插入排序

特別提示

此演算法是插入排序的其中的直接插入排序

熱門標籤