在 Python 中实现插入排序

Implementing Insertion sort in Python

我正在尝试编写插入排序算法(没有书中解决方案的帮助),到目前为止想出了这个算法,当我将它与解决方案匹配时,它看起来不一样。这是我写的代码:

def insertSor(n):
    key = 0
    while key < len(n):
        for j in range(len(n)-1):
            if n[j] > n[j+1]:
                n[j], n[j+1] = n[j+1], n[j]
        key = key+1
    return n


print(insertSor([2, 1, 0, 8, 9, 5]))

此代码作为插入排序仍然有效吗?

书中的算法:

for j = 2 to A.length
    key = A[j]
    i=j-1

    while i > 0 and A[i]>key
       A[i+1]=A[i]
       i = i - 1
    A[i+1]=key

我觉得像是冒泡排序