def straightInsert(a):
# 直接插入排序: 小->大
for i in range(1, len(a)): # 待排序
index = a[i]
j = i - 1 # 表示已經(jīng)排好序
while j >= 0 and a[j] > index:
a[j + 1] = a[j]
j -= 1
a[j + 1] = index
print(a)
a = [5, 4, 3, 2, 1]
straightInsert(a)
直接插入排序
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
推薦閱讀更多精彩內(nèi)容
- 在這篇文章中,你將看到最容易理解的一種排序方法:直接插入排序。 請(qǐng)保證你有連續(xù)的20分鐘來(lái)看這個(gè)算法,如果你用2分...
- 基本思想 首先,我們將數(shù)組中的數(shù)據(jù)分為已排序區(qū)間和未排序區(qū)間,初始已排序區(qū)間只有一個(gè)元素,就是數(shù)組的第一個(gè)元素。插...
- 基本思想:依次將待排序序列中的每一個(gè)記錄插入到一個(gè)已排好序的序列中,知道全部記錄都排好序。具體過(guò)程:(1)將整個(gè)待...
- 基本思想每步將一個(gè)待排序的記錄,按其順序碼大小插入到前面已經(jīng)排序的子序列的合適位置(從后向前找到合適位置后),直到...