堆疊

堆疊(Stack)是資料結構的一種,是一種很基本常見的資料結構,

假設你有一些書把他們疊起來,一層一層的往上疊,所以每次新的書本會放在最上面,而當想要拿取書本的時候,也是從最上面的開始拿。

當然現實生活會有可能從中間抽出書本,不過在程式中是不可以的,

所以他是一種後進先出(Last-In-First-Out, LIFO)的排程,而在此資料結構中至少會實作兩個操作:

1.push:將資料放入堆疊頂端

2.pop:取出堆疊頂端之資料

有時候也會多實作一些額外的操作以方便使用,例如:

1.peek:看堆疊頂端的資料而不取出。

2.size:取得堆疊的數目。