2022年 11月 5日

Python中的栈

本文首发于微信公众号:”算法与编程之美”,欢迎关注,及时了解更多此系列文章。

问题描述

Python中数据类型有列表,元组,字典,队列,栈,树等等。像列表,元组这样的都是python内置数据结构;栈,队列这些都是需要我们自己去定义的。

栈是一种只允许在一端插入和取出的数据结构,这一端通常被叫做栈顶,另一端叫栈底,没有数据的叫空栈。这种数据类型由于是我们自己进行定义,所以有很多功能都需要自己写出相应函数来实现。所以我们看看这里的功能。

解决方案

栈的基本操作大概有:生成栈,入栈,出栈,返回栈顶元素,判断是否为空栈,返回栈内元素个数。

首先我们先要创建一个栈:

class stack(object):

    def  __init__(self):

         self.__list =  []

这里创建出来就是一个空栈,想要检测的话我们也可以通过一个函数来检测是否为空栈:

def is_empty(self):

    return  self.__list == []

    #  return not self.__list

这是两种return的检测方式&#