python数据结构-栈

栈的相关操作

栈也是数据结构中的一种,其特点是先进后出,后进先出。
类似于:要把薯片装进装薯片的筒里,最后进去的一片,是最先被吃掉的。栈的操作相比于链表,比较简单,常见栈的操作包括:进栈与出栈操作。
本次学习内容包括:定义栈结构,数据进栈以及数据出栈操作。

#创建一个栈
class Strack:
    def __init__(self):
        self.strack=[]#创建一个空列表
#定义进栈操作
def _add(self,dataval):
        #判断数据是否在列表中
        if dataval not in self.strack:
            self.strack.append(dataval)
            return self.strack
        else:
            return False
#定义出栈操作
def remove_(self):
        #如果列表长度为0,表示列表中没有元素为空,不能删除
        #如果不为空,则使用pop删除元素
        if len(self.strack)<=0:
            return ('列表为空')
        else:
            return (self.strack.pop())
查看栈顶栈底元素
def bottom(self): #查看栈底元素
        return self.strack[0]
    
def top(self): #查看栈定元素
        return self.strack[-1]
#栈的调用操作
st=Strack()#类实例化
#st._add('1')
#st._add('2')
print(st.remove_())
st._add('3')
#st._add('3') #返回False
print(st.remove_())
st=Strack()#类实例化
st._add('1')
st._add('2')
#print(st.remove_())
st._add('3')
#st._add('3') #返回False
#print(st.remove_())
print('The bottom element is:\n',st.bottom())
print('The top element is:\n',st.top())
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值