排序算法之快速排序
Posted yrzsp
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序算法之快速排序相关的知识,希望对你有一定的参考价值。
#-*-coding:utf-8 -*- import random def quick_sorted(alist,first,last): if first >= last: return else: left_pointer = first right_pointer = last mid_value = alist[first] while left_pointer < right_pointer: while left_pointer < right_pointer and alist[right_pointer] >= mid_value: right_pointer -= 1 alist[left_pointer] = alist[right_pointer] while left_pointer < right_pointer and alist[left_pointer] <= mid_value: left_pointer += 1 alist[right_pointer] = alist[left_pointer] alist[left_pointer] = mid_value quick_sorted(alist,first,left_pointer-1) quick_sorted(alist,left_pointer+1,last) if __name__ == ‘__main__‘: alist = [random.randint(1,100) for _ in range(30)] print(alist) quick_sorted(alist,0,len(alist)-1) print(alist)
使用Python写的快排,测试数据是30个1到100之间的整数列表。
以上是关于排序算法之快速排序的主要内容,如果未能解决你的问题,请参考以下文章