用类实现栈,包含以下方法
方法 | 含义 |
---|---|
push(element) | 将数据存入栈 |
pop | 将数据取出栈 |
empty | 判断栈是否为空 |
full | 判断栈是否满 |
find(element) | 查找元素返回位置 |
peek | 返回栈顶元素 |
代码如下:
class Stack(object):
def __init__(self,max):
self.items = []
self.max = max
#将数据存入栈
def push(self,element):
if len(self.items) >= self.max:
return element
self.items.append(element)
#将数据取出栈
def pop(self):
self.items.pop()
#判断栈是否为空
def empty(self):
return self.items == []
#判断栈是否满
def full(self):
if len(self.stack) == self.max:
return True
else:
return False
#查找元素返回位置
def find(self,element):
return self.items.index(element)
#返回栈顶元素
def peek(self):
if not self.empty():
return self.items[-1]
if __name__ == '__main__':
stack = Stack()
print stack.empty()
stack.push('5')
stack.push('9')
stack.push('7')
print stack.peek()
print stack.full()
print stack.find('9')
运行结果为:
True
7
False
1