数据结构与算法:python栈和队列的用法

2023-12-14 01:43:04

python的栈和队列其实都算作一个数组,栈从最后一个元素开始推出,队列从第一个元素开始推出

# pop(0)删除时间复杂度O(n)
s = [] #栈
q = [] #队列
s.append(1)#1入栈
q.append(1)#1入队
s.pop()#出栈
q.pop(0)#出队

由于从第一个元素删除需要挪动数组,所以可以采用双向链表代替,时间复杂度大大降低

# 时间复杂度较低的方法,这是一个双向链表,可做栈和队列
# 前后插入删除的时间复杂度为O(1)
s = collections.deque()
a.append(1)  #入栈或入队
s.popleft()  #出队
s.popright() #出栈

文章来源:https://blog.csdn.net/tianjuewudi/article/details/134853256
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。