【发布时间】:2016-10-11 05:01:51
【问题描述】:
这似乎是一个简单的问题,但是当我尝试在 Python 中实现选择排序时,我没有得到排序列表。我的实现有问题吗?
def selectionSort (B, annotate=True):
for i in range(len(A)):
for j in range(1,len(A)):
if(A[i] > A [j]):
A[i], A[j] = A[j], A[i]
A = [5, 4, 3, 2, 1]
A_sorted = selectionSort (A)
print ("Sorted " + str(A) + " = " + str(A_sorted))
A = [10, 7, 8, 40, 2, 5]
A_sorted = selectionSort (A)
print ("Sorted " + str(A) + " = " + str(A_sorted))
这是我得到的:
>>> (executing lines 1 to 74 of "selection_sort_103_v2.py")
Sorted [1, 5, 4, 3, 2] = None
Sorted [2, 40, 10, 8, 7, 5] = None
【问题讨论】:
-
你不会从你的函数中返回任何东西。此外,您不使用参数 B:所有工作都在全局
A上完成 -
请修正缩进
-
它会这样做吗? - youtube.com/watch?v=Ns4TPTC8whw
-
@wwii: 如果只是,但不是。
标签: python sorting selection-sort