Python数据结构实验报告:实现顺序栈的基本操作

目录

实验目的

实验内容

实验代码

运行结果


实验目的

考察能否正确理解栈的顺序存储结构,以及对顺序栈基本操作的掌握程度。

实验内容

创建程序,在其中编写一个顺序栈的类,该类必须包含顺序栈的定义及基本操作,并通过以下步骤测试基本操作的实现是否正确。

(1)初始化一个顺序栈 SequenceStack。

(2)判断栈是否为空。

(3)将元素 1,3,5 依次进栈。

(4)遍历栈内所有元素。

(5)获取栈顶元素。

(6)获取栈的长度。

(7)将栈中元素依次出栈并输出。

(8)判断栈是否为空。

实验代码

###########################################################
#类名称:SequenceStack
#类说明:定义一个栈
#类释义:提供顺序栈的相关操作
###########################################################
class SequenceStack:
    ############################
    #默认的初始化栈的函数
    ############################
    def __init__(self):
        self.MaxStackSize=10
        self.s=[None for x in range(0,self.MaxStackSize)]
        self.top=-1
    #############################
    #访问某一元素的函数
    #############################        
    def StackVisit(self,element):
        print(element,end=' ')
    ############################
    #判断栈是否为空的函数
    ############################    
    def IsEmptyStack(self):
        if self.top==-1:
              iTop=True
        else:
              iTop=False
        return   iTop
    ############################
    #元素进栈的函数
    ############################    
    def PushStack(self,x):
        if self.top

运行结果

(1)经判断当前栈为空
(2)元素1 3 5 依次进栈
(3)当前栈顶元素为5
(4)当前栈中共有3个元素,分别为1 3 5 
(5)元素 5 出栈,当前栈中元素为1 3 
(6)元素 3 出栈,当前栈中元素为1 
(7)元素 1 出栈,当前栈为空

你可能感兴趣的:(数据结构)