栈和队列
1.栈
栈:先进后出 。功能:入栈 出栈 取栈顶元素 判断栈是否为空 显示栈的元素
class Stack:
def __init__(self):
self.stack =[]
def push(self,value):
"""
:param value: 入栈元素
:return:
"""
self.stack.append(value)
return True
def pop(self):
# 判断栈是否为空
if self.stack:
# 获取出栈元素 并返回
item = self.stack.pop()
return item
else:
return False
def top(self):
# 取栈顶元素
if self.stack:
return self.stack[-1]
else:
return False
def length(self):
return len(self.stack)
def view(self):
# 显示栈内每个元素
return ','.join(self.stack)
s = Stack()
s.push('1')
s.push('2')
s.push('3')
print(s.view())
item = s.pop()
print(item)
print(s.view())
2.队列
队列:先进先出。功能:入队,出队,取队尾元素,队列长度,显示队列元素
class Stack:
def __init__(self):
self.stack = []
def push(self, value):
"""
:param value: 入队列元素
:return:
"""
self.stack.append(value)
return True
def pop(self):
# 判断队列是否为空
if self.stack:
# 获取出队列元素 并返回
item = self.stack.pop(0)
return item
else:
return False
def top(self):
# 取队列尾元素
if self.stack:
return self.stack[-1]
else:
return False
def length(self):
return len(self.stack)
def view(self):
# 显示队列内每个元素
return ','.join(self.stack)
s = Stack()
s.push('1')
s.push('2')
s.push('3')
print(s.view())
item = s.pop()
print(item)
print(s.view())