排序演算法2 插入排序

2021-10-09 08:28:59 字數 857 閱讀 1411

插入排序是通過不斷插入待排序的元素完成整個排序過程。插入排序是一種很簡單的排序方式,基本思想就是將乙個元素插入到已經排序好的序列中,從而形成乙個新的有序序列。它重複地選擇未排序的元素,將其插入已經排序好的序列中,直到沒有待排序元素時,整個排序過程完成。

插入排序的工作方式就像大家打撲克牌時抓牌一樣。開始時,我們手上是沒有牌的,依次從桌面上面抓取撲克牌,然後插入自己手中已有撲克牌的位置中,只是插入的時候我們按照一定的順序將它插入到合適的位置中。

**示例:

public class insertsort ;

// 序列陣列

integer sortarr = new integer[arr.length];

// 選取第乙個數放入到序列陣列中,即摸第一張牌

sortarr[0] = arr[0];

// 待排序陣列次數,注意這裡不能arr.length-1,因為已經從陣列的第二個元素開始遍歷了

for (int i = 1; i < arr.length; i++)

// 插入元素

sortarr[index] = temp;

}system.out.println(arrays.tostring(sortarr));

}}

輸出示例:

[2, 5, 7, 9, 11, 12]
總結:

對於插入排序,主要是找到元素將要插入的位置,這個過程用抓牌來比擬非常的容易理解,插入排序就是把抓牌這一過程用程式寫出來而已。

排序演算法 2 插入排序

插入排序 insertion sort 的基本思想是 每次將乙個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子檔案中的適當位置,直到全部記錄插入完成為止。本節介紹兩種插入排序方法 直接插入排序和希爾排序。直接插入排序 直接插入排序基本思想 1 基本思想 假設待排序的記錄存放在陣列r 1.n 中...

排序演算法 2 插入排序

思路是 每次從未排好的序列中選出第乙個元素插入到已排好的序列中。步驟可以大致歸納如下 1.從未排好的序列中拿出首元素,並把它賦值給temp變數 2.從排好的序列中,依次與temp進行比較,如果元素比temp大,則將元素後移 實際上放置temp的元素位置已經空出 3.直到找到乙個元素比temp小,將t...

排序演算法2 插入排序

插入排序的中心思想就是將乙個元素插入到已經排好序的陣列當中。陣列a n 初始時,a 0 自成一格有序區,無序區為a 1 n 1 令i 1 將a i 併入當前有序區a 0 i 1 中形成有序區間 i 並重複第二步直到 i n 1 include include include myfunctions....