插入排序:將乙個資料插入到已經排好序的序列中去,插入後保證序列依然有序,這個過程就是插入排序。
現在給定乙個未知是否排好序的陣列,要將其進行從小到大排序。如果使用插入排序,必須先將該資料分為兩部分,一部分是排好序的,一部分是未排序的,並且逐一將未排序的部分插入到已排序的部分中去。
演算法步驟描述:
1、選定陣列第乙個元素作為已排好序部分
2、取下乙個元素作為要插入元素與前面排好序的部分從後向前比較
3、如果該元素大於插入元素,將該元素與插入元素交換
4、重複步驟3,直到找到已排序的元素小於或者等於
插入元素
5、重複步驟2
程式**:
public void insertsort(int a)
a[j] = temp;}}
}
Java排序之插入排序
插入排序 英語 insertion sort 是一種簡單直觀的排序演算法。它的工作原理是通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃瞄,找到相應位置並插入。插入排序在實現上,通常採用in place排序 即只需用到o 1 的額外空間的排序 因而在從後向前掃瞄過程中,需要反覆把已排序元素...
Java排序演算法之 插入排序
package algorithm.sort 原理 插入排序使用的是增量方法,每次將乙個待排序的數,插入到已經排好序的陣列中,直到所有待排序的數都插入到有序陣列中為止 類似於摸牌後整理牌 author administrator public class insertsort a j 1 key 將...
排序之插入排序 Java實現
在計算機的實現中,為了給要插入的元素騰出空間,我們需要將其餘所有元素在插入之前都向右移動一位。對於乙個很大且其中的元素已經有序 或接近有序 的陣列進行排序將會比對隨機順序的陣列或是逆序陣列進行排序要快得多。對於隨機排列的長度為n且主鍵不重複的陣列,平均情況下插入排序需要 public class i...