python插入排序算法实例分析

时间:2021-11-15 06:21:19

本文实例讲述了python插入排序算法。分享给大家供大家参考。具体如下:

?
1
2
3
4
5
6
7
8
def insertsort(array):
  for removed_index in range(1, len(array)):
    removed_value = array[removed_index]
    insert_index = removed_index
    while insert_index > 0 and array[insert_index - 1] > removed_value:
      array[insert_index] = array[insert_index - 1]
      insert_index -= 1
    array[insert_index] = removed_value

另外一个版本:

?
1
2
3
4
5
6
7
8
def insertsort(array):
  for lastsortedelement in range(len(array)-1):
    checked = lastsortedelement
    while array[checked] > array[lastsortedelement + 1] and checked >= 0:
      checked -= 1
    #Insert the number into the correct position
    array[checked+1], array[checked+2 : lastsortedelement+2] = array[lastsortedelement+1], array[checked+1 : lastsortedelement+1]
  return array

希望本文所述对大家的Python程序设计有所帮助。