0
我有什麼應該是一個簡單的快速排序實現,但它返回遞歸深度超出的錯誤,我測試它在少於30個元素的列表。而且,我的實現前幾天正在製作一個10,000的列表,我改變的唯一辦法是將它從一個類移到一個全局函數。任何人都看到可能造成這種情況的原因QuickSort返回遞歸深度錯誤
def quickSort(m, left, right):
if len(m[left:right]) <= 1:
return m
pivot = m[left]
i = left + 1
j = left + 1
for j in range(j, right):
if m[j] <= pivot:
m[j], m[i] = m[i], m[j]
i += 1
m[left], m[i-1] = m[i-1], m[left]
m = quickSort(m, left, i)
m = quickSort(m, i, right)
return m
'爲j在範圍內(j,右):'不能很好(至少對於可讀性) – amit
添加一些打印語句並重新運行以查看它的進展情況。 –