ITパスポート 平成30年度 秋期 特別措置試験 問76
アルゴリズムとプログラミング
スタックからのデータの取出し方
複数のデータが格納されているスタックからのデータの取出し方として,適切なものはどれか。
- ア 格納された順序に関係なく指定された任意の場所のデータを取り出す。
- イ 最後に格納されたデータを最初に取り出す。
- ウ 最初に格納されたデータを最初に取り出す。
- エ データがキーをもっており,キーの優先度でデータを取り出す。
答えと解説
✓ これが正解イ 最後に格納されたデータを最初に取り出す。
解説
最後に積んだものを最初に降ろす、後入れ先出しの入れ物です。
スタックは積み上げるという意味の言葉で、机の上に本を積んでいくところを思うと分かります。取るのは、いちばん上、つまり最後に載せた一冊で、下のほうを先に抜くことはできません。この出し入れの決まりを後入れ先出しといい、計算の途中の値を一時的に置く場所や、呼び出した処理から戻る先を覚えておく場所に使われます。積んだものを上から順に降ろすので、入れた順と出す順がちょうど逆になり、三冊を1、2、3の順に積んだなら、出てくるのは3、2、1の順です。基本の操作は積む操作と降ろす操作の二つで、途中を覗く操作は持ちません。対になるデータ構造がキューで、こちらは待ち行列とも呼ばれ、窓口に並ぶ列と同じく先に入れたものから出ていきます。二つは向きがちょうど反対になります。
ほかの選択肢の解説
- ア 格納された順序に関係なく指定された任意の場所のデータを取り出す。:格納の順に関係なく、指定した任意の場所から取り出すという選択肢です。これは配列のような、番号で直接指せる並びの取り出し方です。スタックは上からしか触れず、途中を抜くことはできません。
- ウ 最初に格納されたデータを最初に取り出す。:最初に入れたものを最初に取り出すという選択肢です。これはキューの先入れ先出しという決まりで、印刷の順待ちがその例です。スタックとちょうど反対なので、二つを取り違えると、そのまま逆の答えになります。
- エ データがキーをもっており,キーの優先度でデータを取り出す。:データがキーを持ち、優先度の高いものから取り出すという選択肢で、これは優先度付きの待ち行列にあたります。入れた順ではなく、付けた重みで順番が決まる、三つ目の別の決まりです。
関連用語
- スタック取り出すのも積むのも一番上だけという、データの出し入れの形です。
- キュー先に入れた要素から先に取り出す、先入れ先出しのデータ構造です。
- 配列要素を連続した領域に並べて格納する入れ物で、添字から場所を計算して直接参照できます。
- 待ち行列先に入れたデータから先に取り出される仕組みで、キューとも呼ばれます。
出典:平成30年度 秋期 ITパスポート試験(特別措置試験) 問76
解説は当サイト独自のもので、IPA(独立行政法人情報処理推進機構)とは関係ありません。
関連問題
- 令和8年度 問67:
整列に 関する 問題 (配列) - 平成30年度 春期 (特別措置試験) 問96:
キューに 関する 問題 (キュー) - 平成28年度 秋期 (特別措置試験) 問92:
スタックに 関する 問題 (スタック) - 平成23年度 特別 問58:
キューに 関する 問題 (キュー) - 平成22年度 春期 問85:
スタックに 関する 問題 (スタック)
同じ分野の問題
誤りを見つけたら報告する