zoukankan      html  css  js  c++  java
  • python,栈的小例子

    '''
    1.首先确认栈的概念,先进后出
    2.初始化的时候如果给了一个数组那么就要将数组进栈
    '''
    class Stack:
        def __init__(self,start=[]):
            self.stack=[] #初始化一个数组,用于存储栈成员
            for x in start: #遍历初始化时给定的数组
                self.push(x) #调用进栈方法
        def isEmpty(self): #判断是否是空的栈
            return not self.stack # not 0 为True  not 1..为True
        def push(self,obj): #进栈
            self.stack.append(obj) #实质是给数组添加成员
        def pop(self): #出栈,一定是先进后出,也就是最后进的最早出去
            if not self.stack: #首先判断栈是否为空
                print("error stack is empty")
            else:
                return self.stack.pop() # 数组的pop是抛出数组最后一个元素,也就是最后田间的元素
        def top(self):
            if not self.stack:
                print("error stack is empty")
            else:
                return self.stack[-1] #取出倒数第一个元素,也就是数组最后一个元素
    
        def bottom(self):
            if not self.stack:
                print("error stack is empty")
            else:
                return self.stack[0] #取出第一个元素,也就是数组第一个元素
    
    
            
            
            
  • 相关阅读:
    面试题 16.07. 最大数值
    461. 汉明距离
    1290. 二进制链表转整数
    1486. 数组异或操作
    1480. 一维数组的动态和
    面试题 17.04. 消失的数字
    626. 换座位
    125. 验证回文串
    530. 二叉搜索树的最小绝对差
    ASP.NET页面之间传递值的几种方式
  • 原文地址:https://www.cnblogs.com/pengpengzhang/p/8732504.html
Copyright © 2011-2022 走看看