List index out of range
我在python中实现quicksort
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #QuickSort python def sort(array): leftside = [] rightside = [] equal = [] pivot = array[0] if (len(array);gt;1): for item in array: if item ;lt; pivot: leftside.append(item) if item ;gt; pivot: rightside.append(item) if item == pivot: equal.append(item) else: print array print sort(leftside) + equal + sort(rightside) array = [1,2,5,4,6,2,3] sort(array) |
我得到错误
"枢轴=数组[0]
IndexError:列表索引超出范围",我在此代码中看不到任何可能导致索引错误的内容。请您看看吗?
进行了其他一些快速修复。 看看这是如何工作的:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #QuickSort python def sort(array): leftside = [] rightside = [] equal = [] if (len(array);gt;1): pivot = array[0] for item in array: if item ;lt; pivot: leftside.append(item) if item ;gt; pivot: rightside.append(item) if item == pivot: equal.append(item) return sort(leftside) + equal + sort(rightside) else: return array array = [1,2,5,4,6,2,3] print(sort(array)) |