栈和队列的区别,栈和堆的区别

栈和队列的区别:

栈的插入和删除操作都是在一端进行的,而队列的操作却是在两端进行的。

栈是先进后出,队列是先进先出。

栈只允许在表尾一端进行插入和删除,队列只允许在表尾一端进行插入,在表头一端进行删除。

 

栈和堆的区别:

栈区:由编辑器自动分配释放,存放函数的参数值,局部变量的值等(基本类型值)。

堆区:由程序员分配释放,若程序员不释放,程序结束时可能有OS回收(引用类型值)。

栈(数据结构):一种先进后出的数据结构。

堆(数据结构):堆可以被看成是一棵树,如:堆排序。

posted @ 2018-03-27 17:30  chenjinbang  阅读(16748)  评论(0编辑  收藏  举报