栈也是一种数据呈线性排列的数据结构,不过在这种结构中,我们只能访问最新添加的数据。
-
栈的概念图。现在存储在栈中的只有数据 Blue。
image.png -
然后,栈中添加了数据 Green。
image.png -
接下来,数据 Red入栈。
image.png -
出栈:从栈中取出数据时,是从最上面,也就是最新的数据开始取出的。这里取出的是 Red。
image.png -
出栈:如果再进行一次出栈操作,取出的就是Green了。
image.png
像栈这种最后添加的数据最先被取出,即“后进先出” 的结构,我们称为 Last InFirst Out,简称 LIFO。
与链表和数组一样,栈的数据也是线性排列,但在栈中,添加和删除数据的操作只能在一端进行,访问数据也只能访问到顶端的数据。想要访问中间的数据时,就必须通过出栈操作将目标数据移到栈顶才行。
网友评论