删除堆顶操作的疑问

来源:10-2 JavaScript 实现:最小堆类

慕用6828665

2021-01-24

对于堆 [1,3,2]
1: 如果采用删除数组第一项,那么3变成根,2变成左子节点,然后3下沉与2交换位置,最终得到的结果是 [2, 3]

2: 采用视频中所说用最后一个元素替换第一个元素,最终得到结果是 [2, 3]

两种方式得到的结果在我看来一样,只是中间过程改变了树结构,所以第一种应该也可以吧

写回答

1回答

lewis

2021-01-27

你仔细回顾一下,为何要用最后一个元素来替换

0
0

JavaScript版数据结构与算法 轻松解决前端算法面试

夯实算法基础,填补技术短板,助力面试考题最后一公里

2481 学习 · 683 问题

查看课程