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