1、何谓栈
栈是有序的集合,添加和移除的操作是发生在同一侧的,发生这些操作的那一端成为“顶端”,另一端为“低端”。
特点:元素越在栈的底端那么它存在的时间就会越长,最新添加的元素将被最先移除。这种排序方法叫做LIFO(last in , first out) 我们剋把它比作食堂用来盛放饭和菜的托盘,总是最先取走最上面的托盘,之后的人也是如此。
栈的操作:
Stack()创建一个空栈。
push(item)将一个元素添加到栈的顶端。
pop()删除栈顶端的元素。
peek()返回栈顶端的元素。
isEmpty()检查栈是否为空。
size()返回栈中元素的数目。
用python实现栈:
以右端为顶端,通过创建一个类来实现。
class Stack:
def __init__(self):
self.items = [ ]
def isEmpty(self):
return self.items == [ ]
def push (self,item):
self.items.append(item)
def pop(self):
return self.items.pop()
def peek(self):
return self.items[len(self.items)-1]
def size(self):
return len(self.items)