快速排序
x为基准值
可以把小于 x 的部分当成二叉树中的左子树,大于 x 的部分当成二叉树的右子树。等于 x 的部分当成二叉树的根结点。
对根节点进行处理就是将根节点放到对应的位置
左子树的根节点是左部分的基准值
右子树的根节点是右部分的基准值
二叉树遍历
处理根节点,遍历左子树,遍历右子树
快速排序数组
基准值放到对应位置(顺便得到基准值index从而将数组分成三部分,找到左部分和右部分)
快排数组左部分
快排数组右部分
快排是让每个基准值到其应该到的位置
先让当前的基准值到达,然后让左部分的所有基准值到达,然后让右部分的所有基准值到达
让当前基准值到达就是处理当前数组,让所有基准值到达就是快速排序.
所以对当前数组基准值到达,然后对左右部分进行快速排序.
- Post title:快速排序
- Post author:Willem Zhang
- Create time:2021-12-01 12:39:02
- Post link:https://ataraxia.top/2021/12/01/快速排序/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
Comments