本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。
问题描述
Python中数据类型有列表,元组,字典,队列,栈,树等等。像列表,元组这样的都是python内置数据结构;栈,队列这些都是需要我们自己去定义的。
栈是一种只允许在一端插入和取出的数据结构,这一端通常被叫做栈顶,另一端叫栈底,没有数据的叫空栈。这种数据类型由于是我们自己进行定义,所以有很多功能都需要自己写出相应函数来实现。所以我们看看这里的功能。
解决方案
栈的基本操作大概有:生成栈,入栈,出栈,返回栈顶元素,判断是否为空栈,返回栈内元素个数。
首先我们先要创建一个栈:
class stack(object): def __init__(self): self.__list = [] |
def is_empty(self): return self.__list == [] # return not self.__list |
def push(self,item): self.__list.append(item) |
def pop(self): self.__list.pop() |
def peek(self): if self.__list: return self.__list[-1] else: return None |
def size(self): return len(self.__list) |
结语
作者:李和龙
实习编辑:衡辉
稿件来源:深度学习与文旅应用实验室(DLETA)
本文分享自微信公众号 - 算法与编程之美(algo_coding)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。