队列与堆栈

列队

  • 只允许在一端进行插入,而在另一端进行删除的运算受限的线性表
  • 允许删除的一端称为队头
  • 允许插入的一端称为队尾
  • 当队列中没有元素时称为空队列
  • 队列遵循的是先进先出(FIFO-First In First Out)

堆栈

  • 限制仅在表的一端进行插入和删除运算的线性表
  • 通常称插入、删除的这一端为栈顶(Top),另一端称为栈底(Bottom)
  • 当表中没有元素的时称为空栈
  • 栈遵循的是先进后出(FILO-First In Last Out)

两者的区别

  • 基于地址指针进行遍历,而且可以从头部或者尾部进行遍历,但不能同时遍历,无需开辟空间,因为在遍历的过程中不影响数据结构,所以遍历速度快
  • 只能从顶部取数据,也就是说先进入栈底的,需要遍历整个栈才能取出,而且在遍历数据的同时需要为数据开辟临时空间,保持数据在遍历前的一致性
原文地址:https://www.cnblogs.com/guge-94/p/10555653.html