Python 使用列表模拟栈

栈有时也被称作“下推栈”。它是有序集合,添加操作和移除操作总发生在同一端,即“顶端”,另一端则被称为“底端”。栈中的元素离底端越近,代表其在栈中的时间越长,因此栈的底端具有非常重要的意义。最新添加的元素将被最先移除。这种排序原则被称作LIFO(last-in first-out),即后进先出。它提供了一种基于在集合中的时间来排序的方式。最近添加的元素靠近顶端,旧元素则靠近底端。

模拟战

复制代码
class Stack:
    def __init__(self):
        '''初始化栈'''
        self.items = []

    def isEmpty(self):
        '''判断栈是否为空'''
        return self.items == []

    def push(self, item):
        '''入栈'''
        self.items.append(item)

    def pop(self):
        '''出栈'''
        return self.items.pop()

    def peek(self):
        '''看下栈顶'''
        return self.items[len(self.items) - 1]

    def size(self):
        '''大小'''
        return len(self.items)
复制代码

使用测试

复制代码
infos = Stack()
print(infos.isEmpty())
infos.push('令狐冲')
infos.push('莫大')
print(infos.peek())
infos.push('风清扬')
infos.push('葵花宝典')
infos.push('依琳')
print(infos.peek())
infos.pop()
print(infos.peek())
print(infos.size())
复制代码

 

posted @   晓枫的春天  阅读(29)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
历史上的今天:
2020-06-26 Vue 简明使用--处理用户点击操作(四)
2020-06-26 Vue 简明使用--for 循环(三)
点击右上角即可分享
微信分享提示