标签:先进先出 添加 数据结构 方便 而不是 util end pytho 进入
列表方法使得列表可以很方便的做为一个堆栈来使用,堆栈作为特定的数据结构,最先进入的元素最后一个被释放(后进先出)。用 append()
方法可以把一个元素添加到堆栈顶。用不指定索引的 pop()
方法可以把一个元素从堆栈顶释放出来。例如:
>>> stack = [3, 4, 5]
>>> stack.append(6)
>>> stack.append(7)
>>> stack
[3, 4, 5, 6, 7]
>>> stack.pop()
7
>>> stack
[3, 4, 5, 6]
>>> stack.pop()
6
>>> stack.pop()
5
>>> stack
[3, 4]
你也可以把列表当做队列使用,队列作为特定的数据结构,最先进入的元素最先释放(先进先出)。不过,列表这样用效率不高。相对来说从列表末尾添加和弹出很快;在头部插入和弹出很慢(因为,为了一个元素,要移动整个列表中的所有元素)。
要实现队列,使用 collections.deque,它为在首尾两端快速插入和删除而设计。例如:
>>> from collections import deque
>>> queue = deque(["a", "b", "c"])
>>> queue.append("A")
>>> queue.append("B")
>>> queue.popleft()
有个方法可以从列表中按给定的索引而不是值来删除一个子项: del 语句。它不同于有返回值的 pop()
方法。语句 del 还可以从列表中删除切片或清空整个列表。
标签:先进先出 添加 数据结构 方便 而不是 util end pytho 进入
原文地址:http://www.cnblogs.com/domainme/p/7145288.html