棧的圖文解析

本文所說的棧是數(shù)據(jù)結(jié)構(gòu)中的棧,而不是內(nèi)存模型中棧。

棧(stack),是一種線性存儲結(jié)構(gòu),它有以下幾個特點:

  1. 棧中數(shù)據(jù)是按照"后進先出(LIFO, Last In First Out)"方式進出棧的。
  2. 向棧中添加/刪除數(shù)據(jù)時,只能從棧頂進行操作。

棧通常包括的三種操作:push、peek、pop。

  • push -- 向棧中添加元素。
  • peek -- 返回棧頂元素。
  • pop -- 返回并刪除棧頂元素的操作。
棧的示意圖

棧中的數(shù)據(jù)依次是 30 --> 20 --> 10

出棧
出棧

出棧前:棧頂元素是30。此時,棧中的元素依次是 30 --> 20 --> 10
出棧后:30出棧之后,棧頂元素變成20。此時,棧中的元素依次是 20 --> 10

入棧
入棧

入棧前:棧頂元素是20。此時,棧中的元素依次是 20 --> 10
入棧后:40入棧之后,棧頂元素變成40。此時,棧中的元素依次是 40 --> 20 --> 10

出處http://www.cnblogs.com/skywang12345/p/3562239.html

棧和數(shù)組、鏈表都屬于線性存儲結(jié)構(gòu)。
這邊有位大佬整理得十分清晰,可供大家參考

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容