前面介紹了兩種排序演算法,今天介紹第三種,也是基於兩兩交換的原則。今天也簡答也介紹一下思路。
演算法思路:我們首先假設某個陣列的字首多少個元素是已經有序的,即假設陣列的前 i 個元素是已經有序的,然後此時我們考察第 i+1個元素的情況,將其設為temp,這個時候從後往前,從第 i 個元素往前走,我們設定乙個下標為k,如果arr[k]>temp,那麼arr[k]往後移乙個位置並且k- -,一直重複這種操作直到出現arr[k]temp,那麼arr[k]往後移動一位且k--成為k=2;
又發現arr[k]>temp,那麼我們就把arr[k]往後移動一位並且k--成為k=1;
這一次發現arr[k]=0&&temp------------------------------有疑問聯絡[email protected]
排序演算法之插入排序
排序演算法之插入排序 1 插入排序的思想 假設在乙個有序序列中 e 0 e i 1 這i 個元素已經排好序,則當要將第 i 1個元素 e 插入該序列時,只需將第 i 1個元素與從 e 0 開始到e i 1 元素進行比較,當發現第 j個元素 e j 在序列中應在 e 前,且 e j 1 應在e 後時,...
排序演算法之插入排序
排序演算法之插入排序 1 插入排序的思想 假設在乙個有序序列中 e 0 e i 1 這i 個元素已經排好序,則當要將第 i 1個元素 e 插入該序列時,只需將第 i 1個元素與從 e 0 開始到e i 1 元素進行比較,當發現第 j個元素 e j 在序列中應在 e 前,且 e j 1 應在e 後時,...
排序演算法之插入排序
本節主要分析插入排序演算法的直接插入排序和希爾 shell 排序 又稱縮小增量排序 1.直接插入排序 該排序是最簡單的排序方法,其基本思想是 假設待排序的記錄存放在陣列r 1.n 中。初始時,r 1 自成1個有序區,無序區為r 2.n 從i 2起直至i n為止,依次將r i 插入當前的有序區r 1....