package algorithm;
public
class
insertsort
// 輸出陣列內容的方法
public
static
void
echoarr
(int
arr)
system.out.
println()
;}// 插入排序
// 時間複雜度: n^2
public
static
void
insertsort()
;// 從第一位開始 而不是第0位
for(
int i =
1; i < arr.length; i++
)else
}// 在把當前的數放到前乙個數
// 因為已經執行過-- 所以需要+1 才能得到正確下標
arr[j +1]
= sortdata;
system.out.
print
("第"
+ i +
"次排序後 ");
echoarr
(arr);}
system.out.
print
("最終結果: ");
echoarr
(arr);}
}
附執行結果如下:
第1次排序後 8970132第2次排序後 7890132
第3次排序後 0789132
第4次排序後 0178932
第5次排序後 0137892
第6次排序後 0123789
最終結果: 0123789
排序演算法整理 1 插入排序
貌似需要整理一下排序演算法了,正好最近在看的宋勁杉的 linux一站式程式設計 也提到了幾個排序演算法,於是決定把幾個常見的排序演算法都寫寫吧。插入排序的過程就是玩兒撲克牌時整理手牌的過程,不斷地從右側選取一張牌,然後把它和左邊已經排序的牌做逐一比較,插入到合適的位置。下面兩個函式用來依次列印陣列。...
插入排序原理及實現思路
插入排序其實就是拿未排序陣列中的第乙個值,插入到已排序完中的陣列的合適位置,來完成排序 圖中的黃色部分為我們已經排好序的陣列部分 圖中的紅色部分為未排好序陣列中的第乙個值 圖中的藍色部分為未排序的陣列部分 1.我們開始預設陣列的第乙個元素為已經排好序的陣列,整個陣列為a 2.未排序陣列中的第乙個元素...
插入排序 折半插入排序
折半插入排序 binary insertion sort 直接插入排序採用順序查詢法查詢當前記錄在已排好序的序列中插入位置,這個 查詢 操作可利用 折半查詢 來實 現,由此進行的插入排序稱之為折半插入排序 binary insertion sort 演算法思想 1 將待排序的記錄存放在陣列r 1.n...