有一部分選擇排序算法,我不明白。在代碼(當使用可變temp
,爲什麼L[i]
和L[minIndx]
分配的值的後半部分?不是那些值本身?不僅能的變量被分配的值?選擇排序'開關'代碼
def selSort(L):
for i in range(len(L) - 1):
minIndx = i
minVal = L[i]
j = i+1
while j < len(L):
if minVal > L[j]:
minIndx = j
minVal = L[j]
j += 1
# aren’t L[i] and L[minIndx] values? How can they be assigned to new values?
if minIndx != i:
temp = L[i]
L[i] = L[minIndx]
L[minIndx] = temp
將您使用的語言標記爲更好的結果 – Reflective
作爲旁註,在Python中,您不需要任何臨時變量來交換兩個值。 'a,b = b,a'可以正常工作。 – georg