顺序栈和链栈(stack)

顺序栈和链栈(stack)

 

栈的定义:它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。

 

我们把栈分为顺序栈和链栈两种,两者分别用不同方法定义

 

我们先来看顺序栈的定义:

 

再看一下链栈的定义:

-------------------------------------------------------------------------------------------------------------

顺序栈功能的实现:

①:初始化

 

②:判满

 

③:压栈

 

 

④:判空

 

⑤:出栈

 

⑥:若顺序栈存在,则获得栈顶元素

 

⑦:获得顺序栈的有效长度

 

⑧:清空顺序栈

 

 

⑨:毁灭顺序栈

 

-------------------------------------------------------------------------------------------------------------

 

 

 

 

 

-------------------------------------------------------------------------------------------------------------

链栈功能的实现:

 

①:初始化

 

②:动态开辟结点

 

③:压栈

 

④:判空

 

⑤:出栈并将其值返回

 

⑥:获得链栈的有效长度

 

⑦清空链栈

 

⑧毁灭链栈

 

-------------------------------------------------------------------------------------------------------------

 

猜你喜欢

转载自blog.csdn.net/IT_Quanwudi/article/details/83795470