美文网首页
Python——用列表实现栈和队列

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

作者: shijiatongxue | 来源:发表于2019-03-13 15:07 被阅读0次

    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

    相关文章

      网友评论

          本文标题:Python——用列表实现栈和队列

          本文链接:https://www.haomeiwen.com/subject/owazpqtx.html