python数据结构之栈

Posted kailicard

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python数据结构之栈相关的知识,希望对你有一定的参考价值。

栈(stack),有些地方称为堆栈,是一种容器,可存入数据元素、访问元素、删除元素,它的特点在于只能允许在容器的一端(称为栈顶端指标,英语:top)进行加入数据(英语:push)和输出数据(英语:pop)的运算。没有了位置概念,保证任何时候可以访问、删除的元素都是此前最后存入的那个元素,确定了一种默认的访问顺序。

由于栈数据结构只允许在一端进行操作,因而按照后进先出的原理运作。

附上完整代码:

class Stack(object):
    def __init__(self):
  #初始化
        self.items=[]
    def empty(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)
if __name__== "__main__":
  #站函数
    stack = Stack()
    stack.push("hello")
    stack.push("python")
    stack.push("itcast")
    print (stack.size())
    print (stack.peek())
    print (stack.pop())
    print (stack.pop())
    print (stack.pop())

以上是关于python数据结构之栈的主要内容,如果未能解决你的问题,请参考以下文章

剑指Offer数据结构之栈和队列[Python版]

python数据结构之栈的实现

4-7 Python数据结构常考题之栈与队列

python线性数据结构之栈的实现

python数据结构之栈队列和双端队列

python数据结构之栈队列和双端队列