From f1eedc369bf5345e73470d25306a27a683346683 Mon Sep 17 00:00:00 2001 From: Yudong Jin Date: Tue, 10 Jan 2023 02:21:09 +0800 Subject: [PATCH] Update heap --- docs/chapter_heap/heap.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/chapter_heap/heap.md b/docs/chapter_heap/heap.md index 03a485f99..dd3598a2b 100644 --- a/docs/chapter_heap/heap.md +++ b/docs/chapter_heap/heap.md @@ -253,6 +253,6 @@ $$ ## 堆常见应用 -- 优先队列。堆常作为实现优先队列的首选数据结构。 -- 堆排序。根据 -- 获取数据中最大的 $k$ 个元素。这即是一道经典的算法题目,也是一种实际应用 +- **优先队列**。堆常作为实现优先队列的首选数据结构,入队和出队操作时间复杂度为 $O(\log n)$ ,建队操作为 $O(n)$ ,皆非常高效。 +- **堆排序**。给定一组数据,我们使用其建堆,并依次全部弹出,则可以得到有序的序列。当然,堆排序一般无需弹出元素,仅需每轮将堆顶元素交换至数组尾部并减小堆的长度即可。 +- **获取最大的 $k$ 个元素**。这既是一道经典算法题目,也是一种常见应用,例如选取热度前 10 的新闻作为微博热搜,选取前 10 销量的商品等。