栈的实现
栈的方法:
入栈(push), 出栈(pop), 栈顶元素(top),
栈的长度(lenght), 判断栈是否为空(isempty)
显示栈元素(view)
class Stack(object):
# 构造函数
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 isempty(self):
return self.stack==[]
def view(self):
return ",".join(self.stack)
s = Stack() #类的实例化
s.push('1') #入栈
s.push('2') #入栈
s.push('3') #入栈
s.push('4') #入栈
item = s.pop() #出栈
item = s.pop() #出栈
print(s.view()) #显示栈内元素
队列的实现
class Queue(object):
def __init__(self):
self.queue = []
#入队
def enqueue(self,value):
self.queue.append(value)
return True
#出队
def dequeue(self):
if self.queue:
del self.queue[0]
return self.queue
else:
return False
#判断长度
def length(self):
return len(self.queue)
#判队空
def isempty(self):
return self.queue == []
def view(self):
return ",".join(self.queue)
q = Queue()
q.enqueue("1")
q.enqueue("2")
q.enqueue("3")
q.enqueue("4")
q.enqueue("5")
print(q.view())
item = q.dequeue()
print(q.view())