我试图在python中对3个数字进行排序,而不使用内置的排序方法,例如'sorted'或.sort。
说我有数字......
2,500,25,15,12
我想输出 2,12,15,25,500
我想模仿如何对python中内置的函数进行排序,但无法找到它的源代码。
对于我做过的3个数字:
msg = "Give me a number: "
pfix = " is the greatest"
a = int(input(msg))
b = int(input(msg))
c = int(input(msg))
nums = []
if a>b and a>c:
nums.append(a)
elif b>a and b>c:
nums.append(b)
else:
nums.append(c)
if a>b and b>c:
nums.append(b)
elif a>b and b>c:
nums.append(b)
elif a>c and c>b:
nums.append(c)
elif b>a and a>c:
nums.append(a)
elif b>c and c>a:
nums.append(c)
elif c>a and a>b:
nums.append(a)
elif c>b and b>a:
nums.append(b)
if a<b and a<c:
nums.append(a)
elif b<a and b<c:
nums.append(b)
elif c<b and c<a:
nums.append(c)
print(nums)
我知道这是一个糟糕的方式,因为它只适用于3个数字。我需要一些使用for循环
的无限数字列表...一样
def num_sort(_list):
for i in range(0, len(_list)):
...
并像这样使用
print(num_sort([2, 500, 25, 15, 12]))
我将如何获得特定的排序? 例如升序或降序......
我知道这就像重新发明轮子但我被告知我需要自己制作方法。
你会做什么?
提前致谢。
答案 0 :(得分:0)
quickSort Algo - http://www.algolist.net/Algorithms/Sorting/Quicksort
Error:(36, -1) Play 2 Compiler:
found : Array[scala.concurrent.Future[Option[models.Document]]]
required: M[scala.concurrent.Future[A]]