時間複雜度為:o(n^2)
原理:將陣列分為兩部分,將後部分元素逐一插入前部分有序元素的適當位置
思路:插入排序的基本思想就是將無序序列插入到有序序列中,每次從待插入組中取出乙個元素,與有序組的元素進行比較,並找到合適的位置,將該元素插到有序組當中。就這樣,每次插入乙個元素,有序組增加,待插入組減少。直到待插入組元素個數為0。
插入排序演算法仍然需要o(n^2)的時間,但是在一般情況下,它要比氣泡排序快一倍,比選擇排序還要快一點。
**實現:
public class 插入排序 ;
charu(array);
} public static void charu(int array)
array[j] = temp;
system.out.print("第"+i+"次:");
for(int k=0;k
system.out.println();}}
}
常見排序演算法 插入排序
插入排序 insertion sort 的基本思想是 每次將乙個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子檔案中的適當位置,直到全部記錄插入完成為止。本節介紹兩種插入排序方法 直接插入排序和希爾排序。直接插入排序基本思想 1 基本思想 假設待排序的記錄存放在陣列r 1.n 中。初始時,r ...
排序演算法 2 插入排序
插入排序 insertion sort 的基本思想是 每次將乙個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子檔案中的適當位置,直到全部記錄插入完成為止。本節介紹兩種插入排序方法 直接插入排序和希爾排序。直接插入排序 直接插入排序基本思想 1 基本思想 假設待排序的記錄存放在陣列r 1.n 中...
排序演算法 2 插入排序
思路是 每次從未排好的序列中選出第乙個元素插入到已排好的序列中。步驟可以大致歸納如下 1.從未排好的序列中拿出首元素,並把它賦值給temp變數 2.從排好的序列中,依次與temp進行比較,如果元素比temp大,則將元素後移 實際上放置temp的元素位置已經空出 3.直到找到乙個元素比temp小,將t...