話不多說,直接上**
插入排序演算法整體不難,主要掌握的就是value的選擇,每次排序之前,列表都是排序好的,以及陣列下標不要越界。def
insert_sort
(a):
lens =
len(a)
for i in
range(1
, lens)
: value = a[i]
j = i-
1while a[j]
> value and j>=0:
a[j+1]
= a[j]
j = j-
1 a[j+1]
= value
return a
if __name__ ==
'__main__'
: b =
input
("please input an array:"
) a_list = b.split(
" ")
a =list
(map
(int
,a_list)
("sort before:"
,end="")
(a)print
("sort after:"
,end="")
(insert_sort(a)
)
時間複雜度:最壞情況是o(n² ),平均情況是o(n² ),最好情況是o(n),這是一種穩定的排序演算法
python實現插入排序演算法
插入排序,其原理是通過構建乙個初始的有序序列,然後從無需序列中抽取元素,插入到有序序列的相對排序位置,就像將一堆編號混亂的書,一本一本的放到書架上,找到上下編號之間的位置插入,最後完成整理。python實現插入排序並不難,從第二個位置開始遍歷,與它前面的元素相比較,如果比前面元素小就交換位置,實現如...
python實現插入排序演算法
插入排序,其原理是通過構建乙個初始的有序序列,然後從無需序列中抽取元素,插入到有序序列的相對排序位置,就像將一堆編號混亂的書,一本一本的放到書架上,找到上下編號之間的位置插入,最後完成整理。python實現插入排序並不難,從第二個位置開始遍歷,與它前面的元素相比較,如果比前面元素小就交換位置,實現如...
python實現插入排序演算法
插入排序,其原理是通過構建乙個初始的有序序列,然後從無需序列中抽取元素,插入到有序序列的相對排序位置,就像將一堆編號混亂的書,一本一本的放到書架上,找到上下編號之間的位置插入,最後完成整理。python實現插入排序並不難,從第二個位置開始遍歷,與它前面的元素相比較,如果比前面元素小就交換位置,實現如...