JavaScript 的資料結構和演算法 - 棧篇

MasterShu發表於2020-01-05

棧也是一種相當常見的資料結構。

簡單的來說,你可以這麼來理解棧,他就像是疊盤子一樣,用的時候從上面拿,少了就往上面放,當然,這就是打個 比方,能形象的理解就好。

理解棧

從上的比喻我們也能看出來,其實棧也是比較容易理解的。而且我們也可以很容易的得出這麼個想法:

  • 棧也是線性表

  • 它操作是受限的

  • 操作也僅有一進一出

  • 後來者居上,也就是先到後出,後到先出

  • 單個端點的操作

至此,關於棧的基本解釋就結束了。相信基本上都明白一二了。

棧的應用

如果想更深入的瞭解棧,你就必須得用起來才行,或者說,至少知道別人是怎麼用的。接下來我會介紹一些應用 場景,感興趣可以自行了解哈。

  • 函式呼叫棧,不錯,這個只要你接觸到程式設計,就一定會了解到這個的。如果有小夥伴感興趣,後續會以 JavaScript 為例,來介紹一下實際執行。

  • 表示式求值,這也是本人接觸到棧的時候寫過的第一個關於棧的應用程式碼。

原文連結 傳送門

本作品採用《CC 協議》,轉載必須註明作者和本文連結
路漫漫其修遠兮,吾將上下而求索。

相關文章