python 中的栈

python 是没有栈的,我们可以模拟一个栈

  • stack通常的操作

Stack() 建立一个空的栈对象
push() 把一个元素添加到栈的最顶层
pop() 删除栈最顶层的元素,并返回这个元素
peek() 返回最顶层的元素,并不删除它
isEmpty() 判断栈是否为空
size() 返回栈中元素的个数


#coding:utf8
class Stack:
    """模拟栈"""
    def __init__(self):
        self.items = []
        
    def isEmpty(self):
        return len(self.items)==0 
    
    def push(self, item):
        self.items.append(item)
    
    def pop(self):
        return self.items.pop() 
    
    def peek(self):
        if not self.isEmpty():
            return self.items[len(self.items)-1]
        
    def size(self):
        return len(self.items) 
 
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 如需转载, 请咨询作者, 并且注明出处.有任何问题, 可以关注我的微博: coderwhy, 或者添加我的微信: ...
    coderwhy阅读 19,645评论 5 48
  • 栈和队列的特性 .栈(stacks)是一种只能通过访问其一端来实现数据存储与检索的线性数据结构,具有后进先出(la...
    锄禾日当阅读 4,872评论 0 0
  • 题目一:设计一个带有getMin功能的栈 [leetcode155]https://leetcode.com/pr...
    futurehau阅读 478评论 0 0
  • 跳望山脚 山脚已变了模样 熟习的脸庞在跃动 银铃的笑声在回荡 淡淡的冬瓜汤在眼前流淌 我们是同窗 相聚山腰 山腰的...
    香自苦寒阅读 252评论 0 1
  • 商务部半夜迅速回应美国白宫29日声明 人民日报 昨天 我们对白宫发布的策略性声明既感到出乎意料,但也在意料之中,这...
    小龙仔他爸阅读 77评论 0 0