栈在Python中属于扩展数据结构,栈属于一端开口一端封闭的容器,
只允许在一端插入和删除的线性表
只允许在一端插入和删除的线性表
top:插入删除端,栈顶
push:入栈、压栈(数据a进入栈顶,当数据b入栈,就到了栈顶,a压入到栈顶的下一个位置。栈只能对栈顶的位置进行操作,等b出栈后,方可对a操作。)
pop:出栈、退栈
getTop:查看栈顶元素
__init__(self)
创建空栈
is_empty(self)
判断栈是否为空,空返回true
push(self, elem)
入栈, 使elem成为新的栈顶
pop(self)
弹出栈顶,若栈为空,抛出异常
top(self)
查看栈顶,若栈为空,抛出异常
#stack的实现
class Stack():#栈的储存模式
def __init__(st,size):#创建空栈,st主题,size容量
st.stack=[];
#stack属性,赋为列表,栈需要在列表上改进,栈只能对栈顶操作
st.size = size;
st.top=-1;
def push(st,content):#入栈,使content称为新的栈顶
if st.Full():
print ("Stack is Full!")
else:
st.stack.append(content)
st.top=st.top+1
def out(st):#出栈
if st.Empty():
print ("Stack is Empty!")
else:
st.top=st.top-1
def Full(st):#判断是否已满
if st.top==st.size:
return True
else:
return False
def Empty(st):#判断是否为空
if st.top==-1:
return True
else:
return False