array_sort = [92, -2, 0, 2009, 3543, 17, 35, 79, 103] for i in range(1, len(array_sort)): key = array_sort[i] j = i-1 while j >= 0 and key < array_sort[j]: array_sort[i] = array_sort[j] array_sort[i] = key print("排序结果为:") for i in range(len(array_sort)): print("%d" % array_sort[i], '', end='')
时间: 2024-02-28 11:54:30 浏览: 41
数组Array的排序sort方法
这段代码也是使用插入排序算法对数组array_sort进行排序,但是存在两个错误。首先,在while循环中,应该将array_sort[j]的值赋给array_sort[j+1],而不是将array_sort[i]的值赋给array_sort[j]。其次,在while循环结束后,应该将key插入到array_sort[j+1]的位置,而不是array_sort[i]的位置。因此,修改后的代码如下:
```
array_sort = [92, -2, 0, 2009, 3543, 17, 35, 79, 103]
for i in range(1, len(array_sort)):
key = array_sort[i]
j = i-1
while j >= 0 and key < array_sort[j]:
array_sort[j+1] = array_sort[j]
j -= 1
array_sort[j+1] = key
print("排序结果为:")
for i in range(len(array_sort)):
print("%d" % array_sort[i], '', end='')
```
输出结果为:-2 0 17 35 79 92 103 2009 3543。
阅读全文