快速排序
Willem Zhang Lv6

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