假設陣列a=
1.從陣列開始位置出發,把a1視為只有乙個資料的有序陣列
2.從a2開始遍歷這個陣列,拿每乙個資料和前面的資料比較,如果前面的資料比這個資料大,那麼把前面的資料往後推乙個位置並記錄其下標,直到前面的資料比這個數小,那麼上乙個比這個數大的數的位置就是要插入的位置,從a2到an依次插入之後就實現了將陣列正序排列,倒序正好相反。
**:
//直接插入排序法
public
class
insertionsort
else
}// 內層迴圈結束後,把當前要操作的值right,插入到指定位置insert
// 如果insert和當前i值相等,說明當前操作的這個值right是不需要移動
// 的。
if(insert != i)
}return arr;
}}
DataStructure 直接插入法過程
加入一組測試資料 有點ugly的對齊 序號i0 1 2 3 4 5 6 7 8 9 10 初始為 哨兵 75 88 68 92 88 62 77 96 80 75 開始哨兵為空,即什麼東西都沒有 演算法 塊 void straghtinsertionsort sqlist s s r j 1 s r...
Java陣列排序 Java直接插入法
直接插入排序的基本思想是 將 n 個有序數存放在陣列 a 中,要插入的數為 x,首先確定 x 插在陣列中的位置 p,然後將 p 之後的元素都向後移乙個位置,空出 a p 將 x 放入 a p 樣可實現插入 x 後仍然有序。例 1本例子通過直接插入的方法對上述例子中的 number 陣列進行排序。建立...
直接插入法排序(c 單鏈表的實現)
具體排序過程是 1 將整個記錄序列劃分為有序區和無序區,初始時有序區為待排序記錄中第乙個記錄,無序區包括所有剩餘待排序的記錄。2 將無序區的第乙個記錄插入到有序區的合適位置中,從而使無序區減少乙個記錄,有序區增加乙個記錄。3 不斷重複2,直到無序區只剩下乙個記錄為止。include using na...