Joh*_*Doe 3 c++ heap heap-memory data-structures
可能重复: 为什么两个不同的概念都称为"堆"?
我用Google搜索过,但找不到这个问题的答案; 动态内存分配中使用的堆与数据结构之间的连接是什么?内存是否以与堆数据结构类似的方式组织在堆上?如果是这样,这看起来很奇怪,因为获取内存应该是随机访问AFAIK(即O(1)),但是从堆中查找项目不会在恒定时间内完成.
那么,这只是堆的重载意义,可以这么说,还是有某种连接?
dir*_*tly 5
堆是标准称为免费商店的同义词.与用于函数调用和函数本地对象存储的堆栈相比,堆在许多实现上以相反的方向(从上到下)增长(而不是堆栈 - 从底部到顶部增长).当然,标准中不需要这些.
另一方面,堆数据结构完全不同 - 它是具有某些属性的专用树结构.
有些实现可能会使用堆数据结构进行自由存储管理,因此可能已经派生了该名称.(参见好友内存分配.)
归档时间:
15 年,11 月 前
查看次数:
1704 次
最近记录: