Java 插入排序

2021-09-08 11:43:10 字數 473 閱讀 5418

public static void insertsort(int a)

int n = a.length;

int j = 0;

for(int i=1; itemp這個條件別忘了

for(j=i-1; j>=0 && a[j]>temp; j--)

//把temp放到合適的位置上去

a[j+1] = temp;

}}

解釋:在插入第i個數。第0到第(i-1)個數已經排好序。

初始時預設第乙個數自己有序。

插入排序的平均時間也是o(n2),但假設輸入資料預先已排好序,那執行時間為o(n)。

假設輸入差點兒是排好序的,那麼插入排序的執行速度還是非常快的。

插入排序是一種穩定的排序。由於假設在插入的過程中,假設碰見乙個和要插入的元素相等的元素,那要插入的元素就會放到該元素的後面,相等元素的前後順序並不會改變。

插入排序(Java)

演算法思想 每趟將乙個待排序的關鍵字,按照其關鍵字值的大小插入到已經排好的部分序列的適當位置上,直到插入完成。演算法 static void insertion sort int unsorted unsorted j temp public static void main string arg ...

java插入排序

簡單的講就是把乙個數字放在一串已經排好順序的陣列中,放進去後還要使得陣列排序完整。那麼,就是1找位置,2填數字。這就是我的思路。下面是插入排序的類 package algorithm public class insertion sort return key public void display...

插入排序 java

插入排序是一種簡單且高效的比較排序演算法。在每次迭代過程中演算法隨機的從輸入序列中移出乙個元素,並將該元素插入待排序列的正確位置。重複該過程,知道所有的輸入元素都被選擇一次。優點 實現簡單。資料量較少時效率高。適應性 如果輸入序列已經與排序 可能是不完全的預排序 則時間複雜度為o n d d是反轉的...