Python堆栈(Stack)

/ / Python堆栈(Stack)

Stack 堆栈存储数据元素 就像一堆盘子在厨房里一个个又一个地存放一样,允许在一端的操作可称为堆栈顶部, 无涯教程只能在堆栈中添加或删除元素。

压入堆栈

class Stack:

    def __init__(self):
        self.stack=[]

    def add(self, dataval):
# 使用列表追加方法添加元素
        if dataval not in self.stack:
            self.stack.append(dataval)
            return True
        else:
            return False
# 使用 peek 查看栈顶

    def peek(self):     
	    return self.stack[-1]

AStack=Stack()
AStack.add("Mon")
AStack.add("Tue")
AStack.peek()
print(AStack.peek())
AStack.add("Wed")
AStack.add("Thu")
print(AStack.peek())

执行以上代码后,将产生以下输出:

链接:https://www.learnfk.comhttps://www.learnfk.com/python-data-structure/python-stack.html

来源:LearnFk无涯教程网

Tue
Thu

删除数据

众所周知,无涯教程只能从堆栈中删除过多的数据元素,以下程序中的remove函数返回最顶部元素。

class Stack:

    def __init__(self):
        self.stack=[]

    def add(self, dataval):
# 使用列表追加方法添加元素
        if dataval not in self.stack:
            self.stack.append(dataval)
            return True
        else:
            return False
# 使用 peek 查看栈顶

    def peek(self):     
	    return self.stack[-1]

AStack=Stack()
AStack.add("Mon")
AStack.add("Tue")
AStack.peek()
print(AStack.peek())
AStack.add("Wed")
AStack.add("Thu")
print(AStack.peek())
Thu
Wed

祝学习愉快! (发现内容有误?请选中要编辑的内容 -> 右键 -> 修改 -> 提交!帮助我们改进教程质量)

精选教程推荐

👇 以下精选教程可能对您有帮助,拓展您的技术视野

DeepSeek-R1前沿入门课 -〔老刘〕

Rust实战 · 手写下一代云原生消息队列 -〔许文强〕

中间件核心技术与实战 -〔丁威〕

徐昊 · TDD项目实战70讲 -〔徐昊〕

说透低代码 -〔陈旭〕

Python自动化办公实战课 -〔尹会生〕

互联网人的英语私教课 -〔陈亦峰〕

摄影入门课 -〔小麥〕

玩转Spring全家桶 -〔丁雪丰〕

📝 好记忆不如烂笔头,留下您的学习笔记吧!

暂无学习笔记,成为第一个分享的人吧!

您的笔记将帮助成千上万的学习者