在去公司面试的过程中,前面回答的问题都比较OK,但是当面试官提出编写一个排序算法的时候,很多面试者脑海中想象排序算法都比较简单,但是当真的让你在编辑器上编程的时候,往往写不出来了,其实排序算法是锻炼编程思维的一种方式,今天我来总结一下使用Python来实现排序算法的相关代码,方便大家阅读和使用。
快速排序代码:
def quick_sort(arr, start, end):
if start >= end:
return
mid = arr[start]
left = start
right = end
while left < right:
while arr[right] >= mid and left < right:
right -= 1
arr[left] = arr[right]
while arr[left] < mid and left < right:
left += 1
arr[right] = arr[left]
arr[left] = mid
quick_sort(arr, start, left - 1)
quick_sort(arr, right + 1, end)
if __name__ == "__main__":
array = [34,56,43,5,7,453,5,6453,265424,35,5475]
quick_sort(array, 0, len(array)-1)
print(arr