python之《栈stack和队列queue》

栈和队列是两种常用的,重要的数据结构。

栈和队列是限定插入和删除只能在表的“端点”进行的线性表。

【栈】

特点:后进先出

1,创建栈(借助列表)

stack = list()
print(stack)
[]

2,判断是否为空栈

stack = list()
print(stack)
if not stack:
    print('为空栈')
else:
    print('不是空栈')
[]
为空栈

3,添加元素(进栈)

stack = list()
print(stack)
if not stack:
    print('为空栈')
else:
    print('不是空栈')
stack.append(1)
stack.append(2)
stack.append(3)
print('进栈之后:',stack)
[]
为空栈
进栈之后: [1, 2, 3]

4,删除元素(出栈)

stack = list()
print(stack)
if not stack:
    print('为空栈')
else:
    print('不是空栈')
stack.append(1)
stack.append(2)
stack.append(3)
print('进栈之后:',stack)
stack.pop()  #从右向左删除
print("出栈之后:",stack)
[]
为空栈
进栈之后: [1, 2, 3]
出栈之后: [1, 2]

【队列】

特点:先进先出。

1,入队

queue =[1,2,3]
print("进队之前:",queue)
queue.append(4)
print("进队之后:",queue)
进队之前: [1, 2, 3]
进队之后: [1, 2, 3, 4]

2,出队

queue =[1,2,3]
print("进队之前:",queue)
queue.append(4)
print("进队之后:",queue)
queue.pop(0)
print("出队之后:",queue)
进队之前: [1, 2, 3]
进队之后: [1, 2, 3, 4]
出队之后: [2, 3, 4]

【注意】

无论是出栈还是出队,都要提前判断一下,栈或者队是不是空的(用 if not判断),如果是空的,不能出栈或者出队,会提示索引错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值