栈是一种仅在尾部进行插入或者删除操作 的线性表,其特点是先进后出,或者是后进先出。

  

  代码实现:

  

# -*- coding = utf-8 -*-
# @Author: Wchime
# @time: 2023/1/21 10:58
# @file: 栈.py


class Stack(object):
    """
    栈, 先进后出
    """
    def __init__(self):
        self.__stack = []

    def is_empty(self):
        # 判断栈是否为空
        return self.__stack == []

    def get_length(self):
        # 获取栈长度
        return len(self.__stack)

    def append(self, item):
        # 入栈
        return self.__stack.append(item)

    def pop(self):
        return self.__stack.pop()

    def get_top(self):
        # 获取栈顶元素
        if self.__stack:
            return self.__stack[-1]
        else:
            return None


if __name__ == "__main__":
    stack = Stack()
    print(stack.is_empty())
    stack.append(3)
    stack.append(4)
    stack.append(5)
    stack.append(6)
    length = stack.get_length()
    print(length)
    print(stack.pop())
    print(stack.pop())
    print(stack.get_top())
    print(stack.is_empty())

 

posted @ 2023-01-21 11:26  Wchime  阅读(71)  评论(0)    收藏  举报