[記事公開日]2014/12/11
[最終更新日]2016/11/26

基本情報技術者試験 2-4(データの格納)

 

 

 

コンピュータの世界では、データをどのように保管するのでしょうか。

「後入先出法」と「先入先出法」があります。

字の通りです。

 

 

●後入先出法

⇒後に入れたのが、先に出て行く。

プッシュ

まず、入れることを「Push」(プッシュ)といいます。

 

 

出すことを「Pop」(ポップ)といいます。

 

★「Push→Pop」の順番を必ず覚えましょう。

 

 

この構造を「スタック構造」といいます。

 

●スタック構造の特徴

・処理を一時的に保管するのに適している

・さっき入れたばかりのデータをすぐに取り出せる

 

以上。(笑)

 

●先入先出法

⇒先に入れたのが、先に出て行く。

エンキュー

入り口はひとつ、出口もひとつしかありません。そして一方通行です。

 

上の図でいうと「3→2→1」の順にデータが格納されたようです。ですので、「3→2→1」の順でデータは取り出されます。

 

入れることを「エンキュー」

 

取り出すことを「デキュー」

 

といいます。

 

★「エンキュー→デキュー」の順番を必ず覚えましょう。

 

 

以上。(笑)

 

基本情報技術者試験では、

・enq

・deq

・push

・pop

と表記されるかと思います。おそらく、注釈にどういう意味かは書いてあると思いますが、問題をいくつか解いて覚えてしまったほうが、回答のスピードは早くなります。。

 

 

<こんな問題がでます>

「enq:3」

「enq:5」

「deq」

「deq」 ←さて何がデキューされたか?

答え:「5」です。そしてこれはキュー構造です。

 

 

<こんな問題がでます>

「push:4」

「push:6」

「pop」

「pop」 ←さて何がポップされたか?

答え:「4」です。そしてこれはスタック構造です。

 

<こんな問題がでます>(融合型)

push(a)

push(b)

enq(pop())

融合

enq(c)

融合2

push(d)

融合3

push(deq())

融合4

pop(x) ←さて「x」は何か?

答え:「b」です。

 

融合パターンに慣れておきましょう。出題されるとしたら「融合パターン」でしょう。

enq(pop()) なんて書き方をします。

 

考えれば小学生でも分かる問題なので、落とさないようにしましょう・・・。(笑)

 

以上です。

 

yamatunes