我正在尝试编写一个选择排序算法,用于从最低到最高对数字列表进行排序。在def sortlh(numList):
if type(numList) != list:
print("Input must be a list of numbers.")
else:
inf = float("inf")
sortList = [0]*len(numList)
count = 0
while count < len(numList):
index = 0
indexLowest = 0
lowest = numList[index]
while index < (len(numList) - 1):
if numList[index + 1] < numList[index]:
lowest = numList[index + 1]
indexLowest = index + 1
index = index + 1
else:
index = index + 1
sortList[count] = lowest
numList[indexLowest] = inf
count = count + 1
return sortList
当我在上运行此代码时:
^{pr2}$
我得到(如预期的那样):[1, 2, 3, 4, 5, 6, 7, 8, 9]
然而,当我尝试另一个例子时,我得到:sortlh([1,3,2,4,5,7,6,9,8])
[8,6,9,2,4,5,7,1,3]
有人看到这里发生了什么事吗?在