第一章(一)

快速排序

基于分治
步骤
(1)确定分界点
一般有三种方法:
取左端点:q[l]
取右端点:q[r]
取中间的数:q[(l+r) / 2]
也可以随机取个数
(2)调整区间(最难)
比如取了 x 这个数作为分界点,则把区间分为两部分:不一定等长
<=x 的在左边,>= x 的在右边
在这里插入图片描述
(3)递归处理左右两段
————————————————————————————————————————————————

例题:785.快速排序

在这里插入图片描述

import java.io.BufferedReader;
import java

猜你喜欢

转载自blog.csdn.net/QinLaoDeMaChu/article/details/105703162