您现在的位置是:首页 > 文章详情

python 栈的简单实现

日期:2019-07-18点击:493

栈(stacks)是一种数据结构,是一种只能在一端进行插入和删除操作的特殊线性表, 它按照先进后出的原则存储数据(Last In First Out - LIFO)。

  • 代码(使用list):

    class Stack(object):
        # 初始化
        def __init__(self):
            self.items = []
        # 判断是否为空
        def is_empty(self):
            return self.items == []
        # 返回栈顶元素
        def peek(self):
            if self.is_empty():
                raise KeyError("stack is None")
            return self.items[len(self.items) - 1]
        #返回栈的大小
        def size(self):
            return len(self.items)
        # 入栈,把新的元素放进栈里
        def push(self, item):
            self.items.append(item)
        # 出栈,把栈顶元素丢出去
        def pop(self):
            if self.is_empty():
                raise KeyError("stack is None")
            return self.items.pop()
    
    if __name__ == '__main__' :
        a_stack = Stack()
        # 插入元素
        a_stack.push('一')
        a_stack.push('二')
        a_stack.push('三')
        
        print(a_stack.size())    # 3
        print(a_stack.peek())    # 三
        print(a_stack.pop())     # 三
        print(a_stack.peek())    # 二
        print(a_stack.size())    # 2
        print(a_stack.is_empty())  # False
        a_stack.__init__()
        print(a_stack.is_empty())  # True
    

    本文链接:时光不写博客

原文链接:https://yq.aliyun.com/articles/709980
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章