顺序栈


●  堆栈的基本概念:堆栈(也简称作栈)是一种特殊的线性表,堆栈的数据元素以及数据元素间的逻辑关系和线性表完全相同,其差别是线性表允许在任意位置进行插入和删除操作,而堆栈只允许在固定一端进行插入和删除操作。

栈(Stack): 是限定仅在表尾进行插入和删除操作的线性表。所谓的表尾是指栈顶,而不是栈底。栈元素也具有线性关系,即前驱后继关系。

先进后出堆栈中允许进行插入和删除操作的一端称为栈顶,另一端称为栈底。堆栈的插入和删除操作通常称为进栈或入栈,堆栈的删除操作通常称为出栈或退栈,不含任何元素的栈称为空栈。

备注:栈本身就是一个线性表,所以我们之前讨论过线性表的顺序存储和链式存储,对于栈来说,同样适用。

栈的顺序存储结构 

1. 栈的示意图

《大话数据结构2》——顺序栈

栈中的数据依次是 30 --> 20 --> 10

2. 出栈

《大话数据结构2》——顺序栈

出栈前:栈顶元素是30。此时,栈中的元素依次是 30 --> 20 --> 10 
出栈后:30出栈之后,栈顶元素变成20。此时,栈中的元素依次是 20 --> 10

时间复杂度为O(1).

3. 入栈

《大话数据结构2》——顺序栈

入栈前:栈顶元素是20。此时,栈中的元素依次是 20 --> 10 
入栈后:40入栈之后,栈顶元素变成40。此时,栈中的元素依次是 40 --> 20 --> 10

时间复杂度为O(1).

 

相关文章:

  • 2022-12-23
  • 2021-09-23
  • 2021-08-14
  • 2021-08-22
  • 2021-08-01
  • 2022-12-23
  • 2022-12-23
  • 2022-03-07
猜你喜欢
  • 2021-10-29
  • 2021-07-11
  • 2021-09-29
  • 2022-12-23
  • 2021-11-16
  • 2022-12-23
相关资源
相似解决方案