排序一个没有排序功能的列表

时间:2017-07-29 11:49:05

标签: python

             a=[12,11,13,21,1,2,3,45,65]
             i=0
             j=1
             k=0
             newarr=[]
             while(len(a)>=k):
                  if (a[i]>a[j]):        
                      a[i],a[j]=a[j],a[i]    
                      i=i+1
                      j=j+1      

             k=k+1   

print(a)

我没有得到预期的输出。 有人可以识别吗?

1 个答案:

答案 0 :(得分:0)

您正在以错误的方式实施算法。好吧,我认为你应该学习不同的排序算法,用python或其他语言的数组进行排序和列表。

Ex:冒泡排序......最容易学习的东西。

LEFT JOIN

还有一件事需要提及。函数list.sort()也使用稳定算法进行排序。 阅读Which sorting algorithm is used by STL's list::sort()?