JES-选择使用嵌套For循环排序

时间:2017-11-08 21:50:18

标签: python sorting for-loop nested jes

我需要编写一个程序来生成一个包含任意数量的随机整数的列表,并使用"选择排序"生成一个排序列表。算法。

我不知道如何使用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

1 个答案:

答案 0 :(得分:0)

First something is wrong with your min calculation, the problem is the definition of min isn't as its right place, try this:

  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