【发布时间】:2014-03-15 13:28:48
【问题描述】:
我认为标题是不言自明的。我正在尝试编写一个程序,该程序可以计算使用插入排序对列表进行排序所需的交换次数。这就是我所做的:
counts = []
for _ in range(int(input())):
size = int(input())
ar = list(map(int, input().split()))
count = 0
for i in range(1, len(ar)):
for j in range(i, 0, -1):
if ar[j] > ar[i]: count +=1
counts.append(count)
print(*counts)
但问题是它不起作用。
对于列表{1 1 1 2 2} 我得到0 这是正确的,但是,
对于列表{2 1 3 1 2} 我得到2 这是不正确的答案是4。
我能知道为什么它不起作用吗?谢谢。
【问题讨论】:
标签: python algorithm sorting python-3.x