1
我的代碼---->Python:append()方法不允許插入排序?
A = [17, 15, 5, 20, 99, 100]
left = []
right = []
left.append(A[ : len(A)/2 ])
#right.append(A[ len(A)/2 : ])
print("Left Before Sort : {l}".format(l=left))
for j in range(1, len(left)):
key = left[j]
i = j - 1
while (i >= 0 and left[i] > key):
left[i+1] = left[i]
i -= 1
left[i+1] = key
print("Left After Sort {l}".format(l=left))
爲什麼左邊是不是得了排序?我嘗試了不同的命名......但輸出相同。
改爲使用'left.extend'。問題是追加一個列表使得列表中的單個元素在更大的列表中。可以這麼說,它並沒有擴展它。 –
'len(left)== 1'。 '.append(A [:len(A)/ 2]))'將'list'附加到''left''包含'A'的前半部分。你可能想'擴展()' – dhke
擴展或切片,'left = A [:len(A)/ 2]' –