Skip to content

Commit 995356c

Browse files
author
YuChengKai
committed
补充堆内容
1 parent f4bdee2 commit 995356c

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

DataStruct/dataStruct-zh.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -712,8 +712,6 @@ class DisjointSet {
712712
}
713713
```
714714

715-
# 优先队列
716-
717715
#
718716

719717
## 概念
@@ -727,6 +725,8 @@ class DisjointSet {
727725

728726
将根节点最大的堆叫做**最大堆****大根堆**,根节点最小的堆叫做**最小堆****小根堆**
729727

728+
优先队列也完全可以用堆来实现,操作是一模一样的。
729+
730730
## 实现大根堆
731731

732732
堆的每个节点的左边子节点索引是 `i * 2 + 1`,右边是 `i * 2 + 2`,父节点是 `(i - 1) /2`
@@ -737,6 +737,8 @@ class DisjointSet {
737737

738738
`shiftDown` 的核心思路是先将根节点和末尾交换位置,然后移除末尾元素。接下来循环判断父节点和两个子节点的大小,如果子节点大,就把最大的子节点和父节点交换。
739739

740+
![](https://user-gold-cdn.xitu.io/2018/6/15/164009e58a5a21f8?w=537&h=394&f=png&s=77222)
741+
740742
```js
741743
class MaxHeap {
742744
constructor() {

0 commit comments

Comments
 (0)