线性结构是一种有序的数据项的集合,每个数据项都有唯一的前驱和后继,除了第一个和最后一个
栈的加入和移除都发生在同一端,叫栈顶,另一端叫栈底
后进先出LIFO,最近加入栈的元素会被最先移除
栈的操作: Stack(): 创建一个空栈
push(item):将item加入栈顶,没有返回值
pop():将栈顶数据项移除,并返回,栈被修改
peek():窥视栈顶数据项,返回栈顶的数据项但不移除,栈不被修改
isEmpty():返回栈是否为空栈
size():返回栈有多少个数据项
具体实例如上图,第一列为栈的操作,第二列为栈内的元素变化,第三列为栈的返回值
定义一个stack类,然后可以调用它的各种方法,具体实例代码如下:
s=Stack()
print(s.isEmpty())
s.push(4)
s.push('dog')
print(s.peek())
s.push(8.4)
print(s.size())
print(s.pop())
运行结果为: