小明用插入排序算法,编写了如下代码,对列表 arr 中的数值进行排序,请问,代码中红色①处,应填写什么代码?( )
arr = [9, 3, 7, 5, 1, 6, 8, 4, 2]
for i in range(1, len(arr)):
key = arr[i]
j = i-1
while j >=0 and key < arr[j] :
arr[j+1] = ①
j = j - 1
arr[j+1] = key
print ("排序后的数组:",arr)
刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!
小明用插入排序算法,编写了如下代码,对列表 arr 中的数值进行排序,请问,代码中红色①处,应填写什么代码?( )
arr = [9, 3, 7, 5, 1, 6, 8, 4, 2]
for i in range(1, len(arr)):
key = arr[i]
j = i-1
while j >=0 and key < arr[j] :
arr[j+1] = ①
j = j - 1
arr[j+1] = key
print ("排序后的数组:",arr)
在这个插入排序的算法中,红色①处应该填写的是要移动的元素的位置。在这个循环中,当发现需要插入的位置(即key应该插入的位置)已经有一个元素时,需要将该元素向后移动一位,为新的元素腾出空间。因此,此处应该填写的是 arr[j]
,即将当前位置的元素移动到下一个位置。所以正确答案是D。
本文链接:小明用插入排序算法,编写了如下代码,对列表 arr 中的数值进行排序,请问,代码中红色①处,应填写什
版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!