栈是一个逻辑结构,通俗的讲,是一个有“纪律”的线性表,栈只允许一端进行插入和删除操作,即“先进后出”规则。如下图所示:
红箭头代表栈顶,即只允许插入和删除的那一端。绿箭头代表栈底,是固定的,即不允许进行插入和删除的另一端。当这个栈内没有元素时,则此时该栈被称为空栈。同样的,栈也有初始化,判定是否为空,插入(进栈),删除(出栈)等操作。下面是关于栈的python实现。
顺序栈实现:
#coding:utf-8
'''
author:xzfreewind
'''
#顺序存储
class Stack(object):
#初始化一个栈
def __init__(self,size):
self.size = size
self.num = 0
self.stack = []
#获取栈的长度
def getSize(self):
return self.num
#输出栈
def outStack(self):
for l in self.stack:
print l
#进栈
def appendStack(self,value):
if self.num >= self.size:
print "the stack is full"
return

本文介绍了栈这一数据结构的基本概念,遵循'先进后出'原则,并探讨了栈的两种常见实现方式——顺序栈和链栈。通过Python代码展示了栈的初始化、判断空栈、入栈和出栈操作。
最低0.47元/天 解锁文章
1611

被折叠的 条评论
为什么被折叠?



