索引堆的插入操作不是应该 data[count+1] = item 吗?为什么是data[i] = item

来源:4-8 索引堆(Index Heap)

慕婉清7522044

2019-07-29

索引堆的插入操作不是应该 data[count+1] = item 吗?为什么是data[i] = item

写回答

1回答

liuyubobobo

2019-07-29

索引堆,初始虽然开出了count个空间,但是,其实是空的,往索引堆中添加一个元素, 是指给对应的索引赋值(包括维护相应的堆性质),让这个索引存在元素。


可以参考这里,理解一下索引堆的应用:https://coding.imooc.com/learn/questiondetail/99784.html 


不过在一章,确实:我只是给除了索引堆的实现,还没有看到索引堆的具体使用,所以很多同学可能不理解索引堆这样设计的原因。在这个课程的后续,无论是Prim最小生成树,还是Dijkstra最短路径,都会是用索引堆,届时,可能同学们就能更加深刻的理解索引堆的使用。在回头看这个问题,就明晰了:)


加油!:)

0
7
慕婉清7522044
回复
liuyubobobo
?,谢谢老师。
2019-07-31
共7条回复

算法与数据结构(C++版) 面试/评级的算法复习技能包

课程专为:短时间内应对面试、升职测评等艰巨任务打造

11187 学习 · 1614 问题

查看课程