数据结构——栈与队列的异同

空间:

                  * 相同之处:

  1.      逻辑上都是线性结构,都是操作受限的线性表。
  2.      插入操作都是在表尾(栈尾、队列尾)。
  3.       都可以实现顺序存储结构与链式存储结构。
  4.      多链栈与多链队列的管理模式可以相同。

                    * 不同之处

  1.      数据元素删除的位置不同。(栈在表尾;队列在表首)
  2.      数据元素的进出不同。(栈是先进后出;队列是先进先出)
  3.       顺序栈能够实现多栈空间共享,而顺序队列不能。
  4.      遍历数据的方式不同。(栈要额外开辟空间)

时间:

                    * 相同之处:

  1.      插入与删除操作都需要常数时间。

                   * 不同之处:

  1.      遍历数据的时间不同。

使用场景的异同:

     栈 :   括号问题的求解,表达式的转换和求值,函数调用和递归实现,深度优先搜索遍历等。
     队列:计算机系统中各种资源的管理,消息缓冲器的管理、广度优先搜索遍历等。

 

你可能感兴趣的:(计算机与网络,数据结构,栈与队列)