作为一项智力挑战,我正在尝试做标题中描述的事情。我被困住了,想知道是否有人有任何帮助的想法..?
def main():
my_list = [1,2,3,4,5,6,3,4,63,3]
sort(my_list)
def sort(my_list):
n=0
m=1
for number in my_list:
if my_list[n] < my_list[m]:
my_list[n] = my_list[n+1]
n+=1
m+=1
print my_list
if __name__ == '__main__':
main()
最佳答案
排序算法有很多,比如冒泡
、快速排序
等等,这里有一个引用http://www.sorting-algorithms.com/ ,您可以根据描述实现其中任何一个。
下面是冒泡排序
def main():
my_list = [1,2,3,4,5,6,3,4,63,3]
sort(my_list)
def sort(my_list):
size = len(my_list)
for i in range(size):
for j in range(size-i-1):
if(my_list[j] > my_list[j+1]):
tmp = my_list[j]
my_list[j] = my_list[j+1]
my_list[j+1] = tmp
print my_list
if __name__ == '__main__':
main()
希望有帮助!
关于python - 不使用 list.sort( ) 对列表进行从小到大排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18168408/