Python——用列表实现栈和队列

1 用列表实现栈的功能

栈是一种“先进后出”的数据结构,可以用python内置的列表实现它。栈有两个最基本的操作:

  • 入栈
stack = [3, 4, 5]
stack.append(6)
stack.append(7)
  • 出栈
stack.pop()
入栈出栈.png

2 用列表实现队列

队列是一种“先入先出”的数据结构,直接用列表实现效率不高。列表在末端进行append和pop时效率很高,但是在首段pop很慢(因为移动队首元素需要将后面的元素各移动一位)。我们可以通过collections.deque实现队列。

入队和出队.png

从上面的图可以看出,用list直接实现队列和用collections.deque实现在10万级别的数据上有接近100倍的差距。
(图中有个小错误,打印的第二行应该list time)


参考文献:
Python-tutorial

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • “我们可以老了再相爱”,我忘了最初是从那听到的这句话了,只记得当时我正反复回味阿飞姑娘念叨的”再不相爱就老了”,总...
    哈罗酱L阅读 1,384评论 0 0
  • LM33 大家好,我爱我自己。昨天一天都在会议讨论中度过,实际工作都是到晚上做了一点,一直不能集中精力,总是有别的...
    sophia夏阅读 2,383评论 0 0
  • 文/二璐 世界那么大,总会有一个人因为你不好,而想要留在你身边。 1 老林拉着茄子的手,走在成都半夜的街头,满是心...
    二璐阅读 4,937评论 1 36