快速排序 · 复杂度笔记
来源: 快速排序 · 算法课
算法思路
算法课- 选择基准值 -> 分区 -> 递归处理两边
- 原地排序,但不稳定
复杂度表
算法课| 情况 | 时间 | 空间 |
|---|---|---|
| Best | Θ(n log n) | O(log n) |
| Average | Θ(n log n) | O(log n) |
| Worst | Θ(n²) | O(n) |
递推式
算法课- T(n) = 2·T(n/2) + Θ(n) ⇒ Θ(n log n)
面试卡片
算法课- Q: 为什么用随机基准值?答:避免在有序或对抗输入上退化到 Θ(n²)。
Hoare 分区方案,原地排序。
选择一个基准值,把较小元素分到左侧,然后递归处理。
缓解方式:随机基准值或三数取中。
来源: 快速排序 · 算法课
| 情况 | 时间 | 空间 |
|---|---|---|
| Best | Θ(n log n) | O(log n) |
| Average | Θ(n log n) | O(log n) |
| Worst | Θ(n²) | O(n) |
第 1 题,共 3 题 · 来源 算法思路
计算机学生 课程往往信息密度很高,边听边记很容易漏掉逻辑和细节,课后又要花很多时间重新整理。
讲义、PDF、阅读材料和视频都分散在不同地方,最后只知道自己看过,但很难快速找回真正要复习的内容。
到了期中期末,才发现重点散在录音、笔记和 PDF 里,没有一份能直接拿来回顾的版本。
这类使用场景里,重点不是马上得到一句答案,而是把讲座、PDF、会议记录和阅读材料整理成后面还能继续推进的版本。
| 能力项 | ThetaWave | ChatGPT |
|---|---|---|
| 真实资料怎么进来 | 计算机学生 相关的讲座、PDF、会议记录和阅读材料可以放进同一条整理链路 | 通常还是一段段提问、一段段处理 |
| 最后整理出了什么 | 笔记、重点、待办和下一步能留在同一份结构里 | 回答出来后仍要自己二次拆分和重组 |
| 后面还能不能继续用 | 适合继续复习、写作、开会准备和长期项目推进 | 更适合临时问答,不够适合持续学习流程 |
| 内容依据 | 锚定在你自己的真实资料上 | 更依赖通用生成 |
| 是否适合这个场景 |
已帮助 300,000+ 名学生整理学习资料
讲座、PDF、视频和阅读材料可一起处理
支持 10 种语言的双语学习输出
"我现在会先用 ThetaWave 把 计算机学生 的课堂资料整理成可复习版本,而不是等到考试前再临时补笔记。"
这里整理了关于计算机学生最常被问到的问题。
从讲座、PDF 和课程阅读里直接生成 计算机学生 复习笔记、闪卡和测验,减少二次整理时间。