要求:
实现一个栈的数据结构,使其具有:入栈、出栈、取栈顶元素、判断栈是否为空、获取栈中元素个数
方法一:数组实现
# -*- coding:utf-8 -*-
'''
数组实现栈的数据结构:入栈、出栈、取栈顶元素、判断栈是否为空、获取栈中元素个数
'''
class MyStack:
#模拟栈
def __init__(self):
self.items = []
#判断是否为空
def isEmpty(self):
return len(self.items) == 0
#返回栈大小
def size(self):
return len(self.items)
#返回栈顶元素
def top(self):
if not self.isEmpty():
return self.items[len(self.items)-1]
else:
return None
#出栈
def pop(self):
if len(self.items)>0:
return self.items.pop()
else:
print("栈已为空!")
return None
#入栈
def push(self,item):
self.items.append(item)
if __name__ == "__main__":
s = MyStack()
s.push(6)
s.push(3)
print("栈顶元素为: