CLRS Algorithm Book 2009版:插入排序算法不会对第一个元素进行排序

时间:2019-04-05 13:13:25

标签: python insertion-sort clrs

注意:关于本书和算法,存在一些问题,但是没有一个是这个版本,也没有这个问题。

enter image description here

Python实现:

unsorted_list = [5, 2, 3, 6, 1, 3]

#insertion sort ->

for j in range(1, len(unsorted_list)):
    key = unsorted_list[j]
    #insert unsorted_list[j] into the sorted sequence unsorted_list[1...j-1]
    i = j - 1
    while i > 0 and unsorted_list[i] > key:
        unsorted_list[i + 1] = unsorted_list[i]
        i = i - 1
    unsorted_list[i + 1] = key

print(unsorted_list)

结果:

[5, 1, 2, 3, 3, 6]

为什么第一个元素没有被触及?我已经用VSCode调试了三次,一切都很好。

0 个答案:

没有答案