本文主要用python语言实现栈和队列的基本操作。

python实现栈的基本操作

""" 以列表的形式简单实现栈 栈:先进后出 """
class Stack:
    def __init__(self):
        self.stack = []  # 初始化

    def is_empty(self):
        return not bool(self.stack)  # 判空

    def push(self, value):
        self.stack.append(value)  # 入栈
        return True

    def pop(self):
        if self.stack:
            return self.stack.pop()  # 出栈
        else:
            raise LookupError('stack is empty!')

    def peek(self):
        if self.stack:
            return self.stack[-1]  # 获取栈顶元素
        else:
            raise LookupError('stack is empty')

    def length(self):
        return len(self.stack)  # 获取栈内元素个数

python实现队列的基本操作

"""
以列表的形式简单实现队列
队列:先进先出
"""
class Queue:
    def __init__(self):
        self.queue = []

    def is_empty(self):
        return not bool(self.queue)

    def enqueue(self, items):
        self.queue.append(items)
        return True

    def dequeue(self):
        if self.is_empty():
            raise LookupError('queue is empty!')
        return self.queue.pop(0)

    def length(self):
        return len(self.queue)

    def show(self):
        if self.is_empty():
            raise LookupError('queue is empty!')
        return self.queue