堆疊 (Stack) 的特性就是 先進後出 (First In Last Out, FILO)。舉個例子,比如說有一個長深桶子,我們依序放入大小剛好的 1 到 5 好球,所以 1 會在最下面,5 會在最上面。
5 |
4 |
3 |
2 |
1 |
buttom |
為了要變球拿出來,我們只能從最上方一個一個拿起來。 |
- |
5 |
4 |
3 |
2 |
1 |
bottom |
這種排列方式就叫做堆疊。又或是在現實生活中警察所用的手槍,子彈一一裝入彈夾中,但是最後一發裝入的子彈卻是排在最上方,最先被射擊出去。這也是一種堆疊。 |
其中最著名的問題就是:河內塔。
有興趣的可以在自己上網查。我過兩天也會把程式碼和解答補上。