这样理解栈吧,就是把栈看成一个列表,无外乎它的使用方法
# 栈结构
# -*- coding: utf-8 -*-
class Stack:
def __init__(self):
self.items = []
def push(self, value): # 压栈,一个一个往栈(列表)中推
self.items.append(value)
def pop(self): # 弹栈,由于栈结构是先进后出,后进先出的原理,所弹出是倒序,有点类似list[::-1]方法
return self.items.pop()
if __name__ == '__main__':
s = Stack()
# 推进栈,目前有个问题,我想遍历列表,然后列表中数推到栈中,好像不知道哪出问题了,弹栈的时候没成功
s.push(1)
s.push(2)
s.push(3)
print(s.pop())
print(s.pop())
print(s.pop())
网友评论