0%

堆和栈的区别

1.数据结构:

栈,先进先出的一种数据结构

堆,二叉堆类似于二叉树,特点:根节点的值最小(或最大),且根节点的两个子树也是一个堆

2.内存分配

栈,由操作系统自动分配释放

堆,由程序员分配和释放,若程序不释放,结束后可能由OS回收,分配方法类似于链表

3.缓存级别

栈:1级缓存

堆:2级缓存