有n(n<=100)個整數,已經按照從小到大順序排列好,現在另外給乙個整數x,請將該數插入到序列中,並使新的序列仍然有序。
輸入輸入資料報含多個測試例項,每組資料由兩行組成,第一行是n和m,第二行是已經有序的n個數的數列。n和m同時為0標示輸入資料的結束,本行不做處理。
輸出對於每個測試例項,輸出插入新的元素後的數列。
難度一般
輸入示例
3 31 2 4
0 0
輸出示例
1 2 3 4
#include#include#include#includeusing namespace std;
main()
else
a[n]=m;}}
else
a[i]=m;
for(i=0;i}
return 0;
}
插入排序 折半插入排序
折半插入排序 binary insertion sort 直接插入排序採用順序查詢法查詢當前記錄在已排好序的序列中插入位置,這個 查詢 操作可利用 折半查詢 來實 現,由此進行的插入排序稱之為折半插入排序 binary insertion sort 演算法思想 1 將待排序的記錄存放在陣列r 1.n...
插入排序 折半插入排序
折半插入排序是基於直接插入排序的優化。直接插入排序 將第i個元素插入時,通過折半查詢的方式,來查詢第i個元素合適的位置。當0 i 1 位置上的元素都已經排序ok,現需要插入第i個元素,設其值為temp 令low 0,high i,mid high low 2。那麼temp可能插入的位置是 low h...
插入排序 希爾插入排序
本文借鑑於lsgo實驗室創始人馬老師 演算法 希爾插入排序 delta len nums 2 while delta 0 shell delta,nums delta delta 2return nums defshell delta,key for i in range delta,len key...