- 1
- 2
- 3
- 4
- 5
用快速排序求解数组第K小元素的过程
资料介绍
用快速排序算法求解数组第K小元素的过程 问题定义 给定一个无序数组,要求找出其中第 小(或第 大)的元素。例如数组 的第 2 小元素是 2,第 3 小元素是 3。 朴素解法与不足 朴素解法先将整个数组排序,再取出第 个元素,时间复杂度为 。当数据量较大且只关心单个第 元素时,可以做得更好。 快速排序的分治思想可以扩展为"快速选择",在平均 时间内找到第 小元素。 快速选择的核心思想 快速选择利用快速排序的"分区"过程: 选取一个基准元素,将数组分为小于基准与大于等于基准的两部分。 根据基准元素在分区后的位置 pos 与 的关系: 若 pos == K,则基准元素就是第 小元素。 若 pos > K,则第 小元素在左半部分,只递归处理左边。 若 pos < K,则第 小元素在右半部分,只递归处理右边。 由于每次都只递归一侧,平均复杂度降为 。 C 代码实现 c#include
部分文件列表
| 文件名 | 大小 |
| 用快速排序求解数组第K小元素的过程.docx | 38K |
最新上传
-
yahuang001 打赏3.00元 3天前
-
yahuang001 打赏1.00元 3天前
-
zhongshaoxiong 打赏3.00元 3天前
-
他山之石可攻玉 打赏60.00元 3天前
用户:烟雨
-
江岚 打赏210.00元 3天前
用户:潇潇江南
-
江岚 打赏100.00元 3天前
-
21ic下载 打赏310.00元 3天前
用户:gsy幸运
-
21ic下载 打赏310.00元 3天前
用户:zhengdai
-
21ic下载 打赏310.00元 3天前
用户:江岚
-
21ic下载 打赏210.00元 3天前
用户:潇潇江南
-
21ic下载 打赏60.00元 3天前
用户:他山之石可攻玉
-
21ic下载 打赏60.00元 3天前
用户:烟雨
-
21ic下载 打赏60.00元 3天前
用户:w178191520
-
21ic下载 打赏60.00元 3天前
用户:w993263495
-
21ic下载 打赏110.00元 3天前
用户:xzxbybd
-
21ic下载 打赏60.00元 3天前
用户:zq_1943
-
21ic下载 打赏20.00元 3天前
用户:kk1957135547
-
21ic下载 打赏20.00元 3天前
用户:sun2152
-
21ic下载 打赏20.00元 3天前
用户:铁蛋锅
-
21ic下载 打赏20.00元 3天前
用户:xuzhen1
-
21ic下载 打赏20.00元 3天前
用户:w1966891335
-
21ic下载 打赏35.00元 3天前
用户:有理想666
-
21ic下载 打赏15.00元 3天前
用户:nuaanuaa111
-
21ic下载 打赏20.00元 3天前
用户:liqiang9090
-
21ic下载 打赏15.00元 3天前
用户:ningmengge
-
21ic下载 打赏10.00元 3天前
用户:mulanhk
-
21ic下载 打赏5.00元 3天前
用户:asys
-
21ic下载 打赏10.00元 3天前
用户:舞蹈荀彧
-
21ic小能手 打赏5.00元 3天前
资料:磁编码器开源方案
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏50.00元 3天前
-
江岚 打赏20.00元 3天前
-
江岚 打赏10.00元 3天前
-
21ic小能手 打赏10.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏8.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏3.00元 3天前




全部评论(0)