下から上へ品物を積み上げ,上にある品物から順に取り出す装置がある。この装置に対する操作は,次の2種類である。
最初は何も積み上げていない状態から開始して,次の順序で操作を行った結果はどれか。
PUSH 1→PUSH 5→POP→PUSH 7→PUSH 6→PUSH 4→POP→POP→PUSH 3
PUSHとPOPの操作にしたがって、順に操作を行っていけばよい。
このようなデータ構造をスタックという。スタックの特徴は、後入れ先出し(Last In First Out;LIFO)で、後から入ってきたデータが先に取り出される。
先に入ったデータから順に取り出されるデータ構造をキュー(queue)という。キューはその特徴から、先入れ先出し、(First In First Out;FIFO)という。