python中利用list实现stack


class mystack():
  def  __init__(self):
    self.maxsize=5000
    self.max=-1
    self.l1=[]
  def  setmaxsize(self,s):
    if isinstance(s,int)==False:
      print('your input is not a number!')
    elif s<self.maxsize:
      print('Do not support shrink!')
    else:
      self.maxsize=s
  def push(self,a):
    if self.max<self.maxsize-1:
      self.l1.append(a)
      self.max += 1
    else:
      print('The stack is full!')  
  def  pop(self):
    if self.max>-1:
      res=self.l1.pop(-1)
      self.max -= 1
      return res
    else:
      print('The stack is empty!')
  def count(self):
    return self.max+1
  def getmaxsize(self):
    return self.maxsize


说明:
类mystack包含一下method:
setmaxsize(s):设置stack的最大容量,要求输入整数,stack只能扩大,不能缩小
getmaxsize():获得stack的最大容量
count():获得stack当前所含元素数量
push(a):将元素推入stack
pop:从stack中获取一个元素

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值