定義:它的工作原理是通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃瞄,找到相應位置並插入。
從第乙個元素開始,該元素可以認為已經被排序
取出下乙個元素,在已經排序的元素序列中從後向前掃瞄
如果該元素(已排序)大於新元素,將該元素移到下一位置
重複步驟3,直到找到已排序的元素小於或者等於新元素的位置
將新元素插入到該位置後
重複步驟2~5
流程圖:
python **實現:
#!/usr/bin/env python
#-*- encoding: utf-8 -*-
'''@file :insertionsort.py
@description :
@creattime :2020/08/20 16:39:30
@author :yunhgu
@version :1.0
'''def
insertionsort(array):
for i in range(1,len(array)):
preindex = i-1current =array[i]
while preindex>=0 and array[preindex]>current:
array[preindex+1]=array[preindex]
preindex-=1array[preindex+1] =current
return
array
if__name__ == "
__main__":
int_list = [8, 6, 4, 7, 5, 2, 3, 9, 4]
i =insertionsort(int_list)
print(i)
插入排序 python實現
以下是插入排序的python函式實現 def insert sort arr for j in range 1,len arr 從list第二個元素開始 key arr j 儲存將要進行插入排序的元素數值 index j 儲存將要進行插入排序的元素的索引 while index 0 and arr ...
python實現插入排序
插入排序 英語 insertion sort 是一種簡單直觀的排序演算法。它的工作原理是通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃瞄,找到相應位置並插入。插入排序在實現上,在從後向前掃瞄過程中,需要反覆把已排序元素逐步向後挪位,為最新元素提供插入空間。插入排序分析 實現 i 1 1 ...
Python實現插入排序
插入排序 insertion sort 是一種比較簡單直觀的排序演算法。插入排序的步驟 從第乙個元素開始,該元素可以認為已經被排序 取出下乙個元素作為待插入物件,在已排序序列中從後向前掃瞄 如果該元素小於前乙個元素,則將兩者調換,再與前乙個元素比較 重複第三步,直到前乙個元素不大於待插元素 將新元素...