学习目标:
算法导论原书第3版 Thomas H . Cormen P110 8.3基数排序 快速排序(原证排序)
学习内容:
-
P110 8.3基数排序 快速排序(原证排序)
基数排序概念:基数排序也称为卡片排序,简而言之,基数排序的原理就是多次利用计数排序(计数排序是一种特殊的桶排序),但是和前面的普通桶排序和计数排序有所区别的是,基数排序并不是将一个整体分配到一个桶中,而是将自身拆分成一个个组成的元素,每个元素分别顺序分配放入桶中、顺序收集,当从前往后或者从后往前每个位置都进行过这样顺序的分配、收集后,就获得了一个有序的数列。
https://www.sohu.com/a/432454385_250298 有图形来详细介绍
-
快速排序概念
快速排序是Hoare于1962年提出的一种二叉树结构的交换排序方法,其基本思想为:任取待排序元素序列中的某元素作为基准值,按照该排序码将待排序集合分割成两子序列,左子序列中所有元素均小于基准值,右子序列中所有元素均大于基准值,然后最左右子序列重复该过程,直到所有元素都排列在相应位置上为止。
https://blog.csdn.net/C_Trip/article/details/126624319
(左右指针法)取最左边key为基准值,用right指针找比key值小的元素,用left指针找比key位置大的元素,将两位置值进行交换,最后,将key值放在二者相遇位置上,就可保证key左边都是比key小的值,右边都是比key大的值,然后进行递归即可实现,从相遇点分割成两部分,在分别对左右两部分重复上述排序。
学习时间:
提示:这里可以添加计划学习的时间
- 每天上班前30分钟
学习产出:
提示:这里统计学习计划的总量
- 技术笔记 2 篇