插入排序是經常用到的一種排序算法,它的原理是什麼?如何實現,座標X為您一一解答。
方法/步驟
一、插入排序,顧名思義,每次插入都遍歷一次有序數列,找到新插入元素的位置,將其放入數列中即可。
二、在插入排序中,我們假定給的無序數列為int a[6]={5,2,4,6,1,3}.
三、算法的基本執行步驟1:第一個元素我們認為是有序的,因此選取第二個元素開始進行插入排序。
三、算法的基本執行步驟2:在已排序的(已有序)的元素中,從後向前掃描數列。
三、算法的基本執行步驟3:若該元素(已排序的元素)大於1中取出的元素且已排序元素還未掃描完,則將該元素向後移一位。
三、算法的基本執行步驟4:直到找到取出元素的位置。
三、算法的基本執行步驟5:重複2至4的步驟,直到數列中的數字被全部遍歷。
四、具體實現代碼如下:
五、運行效果如下:總共執行了5次插入排序。
六、效率分析,在最壞的情況下(數列逆序),比較次數和移動次數最多為n*n(-1)/2