1、栈,又称为堆栈,是一种容器,可存入数据元素、访问元素、删除元素。栈只允许在容器的一段进行插入数据和输出数据。栈先进后出,后进先出
2、栈的操作有:
Stack() 创建一个新的空栈
push(item) 添加一个新的元素item到栈顶
pop() 弹出栈顶元素
peek() 返回栈顶元素
is_empty() 判断栈是否为空
size() 返回栈的大小
3、栈的实现
class Stack(object):
#栈的实现
def __init__(self):
self.items = []
def is_empty(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)
if __name__ == '__main__':
stack = Stack()
print(stack.is_empty())
stack.push('hello')
stack.push('python')
stack.push('qiku')
stack.push('zhengzhou')
print(stack.is_empty())
print(stack.size())
print(stack.peek())
print(stack.pop())
print(stack.pop())
print(stack.pop())
print(stack.pop())
print(stack.is_empty())