第 26 行的语法错误
syntax error at line 26
第 26 行出现语法错误。这是下面的代码。不知道为什么我会出错。在 python
中实施快速排序
'''quick sort'''
def quicksort(arr, size):
partition(arr, size)
def partition(arr, size):
if size <= 1:
return
left = 0
right = size - 1
pivot = arr[size/2]
while left < right:
while arr[left] < pivot:
left += 1
while arr[right] > pivot:
right -= 1
temp = arr[left]
arr[left] = arr[right]
arr[right] = temp
partition(arr, left)
partition(arr[left:], len(arr[left:])
arr = [1,2,3,4,5,45,3,5,4,6]
quicksort(arr, len(arr))
这里:
partition(arr[left:], len(arr[left:])
↑
你少了一个 )
。使用 IDE 将真正帮助您找到像这样的小问题。
请注意,您的代码存在更多问题,它们与您遇到的语法错误无关。
一般注意事项:下次当您 post 一个问题时,请多加努力 post 确切的错误,并尝试用您自己的话解释您遇到的问题,以便您可以做得更好并尽快提供帮助。在问题的 body 中发布标题中的错误和功能并不是一个很好的提问方式。
您在第 26 行缺少括号。
partition(arr[left:], len(arr[left:])
应该是:
partition(arr[left:], len(arr[left:]))
第 26 行出现语法错误。这是下面的代码。不知道为什么我会出错。在 python
中实施快速排序'''quick sort'''
def quicksort(arr, size):
partition(arr, size)
def partition(arr, size):
if size <= 1:
return
left = 0
right = size - 1
pivot = arr[size/2]
while left < right:
while arr[left] < pivot:
left += 1
while arr[right] > pivot:
right -= 1
temp = arr[left]
arr[left] = arr[right]
arr[right] = temp
partition(arr, left)
partition(arr[left:], len(arr[left:])
arr = [1,2,3,4,5,45,3,5,4,6]
quicksort(arr, len(arr))
这里:
partition(arr[left:], len(arr[left:])
↑
你少了一个 )
。使用 IDE 将真正帮助您找到像这样的小问题。
请注意,您的代码存在更多问题,它们与您遇到的语法错误无关。
一般注意事项:下次当您 post 一个问题时,请多加努力 post 确切的错误,并尝试用您自己的话解释您遇到的问题,以便您可以做得更好并尽快提供帮助。在问题的 body 中发布标题中的错误和功能并不是一个很好的提问方式。
您在第 26 行缺少括号。
partition(arr[left:], len(arr[left:])
应该是:
partition(arr[left:], len(arr[left:]))