首页 > 代码库 > 堆和栈

堆和栈

堆栈是两种数据结构,都是一种数据项按序排列的数据结构

堆,列队优先,先进先出 (由程序员分配释放)
栈,先进后出 (由编译器自动分配)

堆和栈的区别可以用如下的比喻来看出:
使用栈就象我们去饭馆里吃饭,只管点菜(发出申请)、付钱、和吃(使用),吃饱了就走,不必理会切菜、洗菜等准备工作和洗碗、刷锅等扫尾工作,他的好处是快捷,但是自由度小。
使用堆就象是自己动手做喜欢吃的菜肴,比较麻烦,但是比较符合自己的口味,而且自由度大。

技术分享

堆和栈