数据结构:栈与队列

前言

何为?何为队列先进先出后进先出的区别,本文就跟你们分享下栈与队列这两种数据结构的优缺点以及适用场景,欢迎各位感兴趣的开发者阅读本文。算法

栈的认识

概念

栈也是一种数据呈线性排列的数据结构,不过在这种结构中,咱们只能访问最新添加的数据。数据结构

入栈

往栈中添加数据的操做就叫“入栈”,往栈中添加数据时,新数据被放在最上面。3d

出栈

从栈中取出数据的操做就叫“出栈”,从栈中取出数据时,会从最新的数据开始取。cdn

优势

因为栈中存放数据的结构是后放进去的数据先取出来(后进先出),针对一些操做须要取最新数据时,选择栈做为数据结构是最合适的。blog

缺点

访问栈中的任意数据时,就须要从最新的数据开始取,效率较低。队列

队列的认识

概念

队列的数据结构与栈的数据结构相同,队列中的数据也是呈线性排列。与栈不一样的地方在于:队列中添加和删除数据的操做分别是在两端进行的。图片

入队

往队列中添加数据的操做就叫“入队”。开发

出队

从队列中删除数据的操做就叫“出队”,从队列中取出(删除)数据时,是从最先入队的数据开始的(先进先出)。it

优势

队列的特色是,最先添加进来的数据,先取出,对于须要获取最先添加的数据时,选择队列做为数据结构,将会大大的提高效率。io

缺点

获取最新的数据就须要从最开始入队的数据开始查找,效率较低。

栈与队列的共同点

访问中间数据时,都须要进行取出操做。

写在最后

  • 文中使用的图片源自《个人第一本算法书》,如若侵权,请评论区留言,做者当即删除相关图片。
  • 文中若有错误,欢迎在评论区指正,若是这篇文章帮到了你,欢迎点赞和关注😊
  • 本文首发于掘金,未经许可禁止转载💌
相关文章
相关标签/搜索