>我需要编写一个程序来生成一个包含任意数量的随机整数的列表,并使用"选择排序"算法生成排序列表。
我不知道如何使用 i 从 0 计数到列表的最后一个索引。
我也不确定如何使用 j 从 i + 1 计数到列表的最后一个索引。
当我运行程序时,它只是生成一个包含 10 个整数的随机列表,一些是负数,一些是正数。下面是说明的图片,以及到目前为止我的代码。感谢您的任何帮助。
def main():
list= []
length= 10
num_operations= 0
while num_operations < length :
list= list + [randint(1, 100)]
num_operations+=1
print list
for i in range( 0, length ) :
i = i + 1
min = i
for j in range ( i + 1, length ) :
if list[j] < list[min] :
min = j
if min != i :
temp= list[i]
list[i]= list[min]
list[min]= temp
首先,您的最小值计算有问题,问题是min的定义不是正确的位置,请尝试以下操作:
min = 0
for i in range( 0, length) :
for j in range ( i + 1, length) :
if list[j] < list[min] :
min = j
i = i + 1