当前位置: 首页 > news >正文

【排序】快排思想以及例子

在这里插入图片描述

思想

使用分治法来处理数据

例题

19 97 09 17 01 08
首先确定一个pivot 一般是首位,把比p小的放p的左边,比p大的放p的右边。L是左指 R是右指
首轮排序

p 19
__ 97 09 17 01 08
L R
首先应从R开始判断 08<19
08替换到p所在位置,R移动
p 19
08 97 09 17 01 __
L R
接着是L指移动,97>19,97替换到R
08 __ 09 17 01 97
L R
接着是R指移动,01<19 01替换到L
08 01 09 17 __ 97
L R
接着是L指移动,09<19 序列不变
08 01 09 17 __ 97
L R
接着是L指移动,17<19 序列不变
08 01 09 17 __ 97
L R
接着是L指移动,L指R指重合 替换p 19
08 01 09 17 19 97
R
L
首轮排序结束 此时在19的左边是小于他的序列 右边是大于他的序列,再分别对左右序列做快排
首先从R指开始判断17>08 位置不动
p 08
__ 01 09 17
L R
R指指向下一位
p 08
__ 01 09 17
L R
09>08 位置不动
R指指向下一位
__ 01 09 17
L R
01>08 替换到L
01 __ 09 17
L R
L指指向下一位
01 __ 09 17
R
L
R,L重合 放入p 08
01 08 09 17
此时序列,右序列只有一个数无序再排序
01 08 09 17 19 97 有序


http://www.mrgr.cn/news/57309.html

相关文章:

  • 软考数据结构 -- (时间复杂度,线性结构,线性表,栈,队列,串,数组,矩阵,树,图)
  • yjs机器学习数据操作01——数据的获取、可视化
  • python程序设计员—练习笔记
  • 探究Redis
  • 汽车3d动画效果怎么样?云渲染提升汽车营销体验
  • 解决 Spring Boot项目 CPU 尖刺问题
  • JavaScript 第30章:综合项目
  • “摄像机”跟随及攻击抖动实现
  • Linux基础IO
  • Android Handler(Looper.getMainLooper()),Kotlin
  • priority_queue (优先级队列的使用和模拟实现)
  • K折交叉验证代码实现——详细注释版
  • IPC 信号-Signal Linux环境
  • 栈的顺序存储总览
  • 关于风险系统解读最全最专业文章:一篇文章讲透风险,跨学科搞懂风险游戏规则,风险信任风险主观性客观性风险本质人格特质与风险态度技术风险系统风险社会新产品风险
  • 栈和队列代码
  • ARM/Linux嵌入式面经(五二):华为
  • Spring 设计模式之单例模式
  • C++新基础类型(C++11~C++20)
  • ECharts图表图例11
  • 解决cad找不到vcruntime140_1.dll,无法继续执行代码的6种方法
  • 《YOLO 目标检测》—— YOLO v3 详细介绍
  • 拟态UI3.0个人页
  • django模板相关配置
  • 一个将.Geojson文件转成shapefile和kml文件的在线页面工具(续)
  • hive数据库,表操作