基本情報技術者試験の過去問と解説
[TOP] [午前分野別] [午後分野別] [キーワード索引] [平成31年春午前] [平成31年春午後]

[an error occurred while processing this directive]
平成31年 春期 基本情報技術者 午前 問06
問06   スタック

 三つのスタックA,B,Cのいずれの初期状態も[1,2,3]であるとき, 再帰的に定義された関数 f() を呼び出して終了した後のBの状態はどれか。 ここで,スタックが[a1,a2,…,an-1]の状態のときに anを push した後のスタックの状態は[a1,a2,…,an-1,an]で表す。

f(){
 Aが空ならば{
  何もしない。
 }
 そうでない場合{
  Aから pop した値をCに push する。
  f() を呼び出す。
  Cから pop した値をBに push する。
 }
}

ア [1,2,3,1,2,3]       イ [1,2,3,3,2,1]

ウ [3,2,1,1,2,3]       エ [3,2,1,3,2,1]


解答←クリックすると正解が表示されます

解説

 最終的に、Bの状態は、[1,2,3,1,2,3]となる。

[←前の問題] [次の問題→] [問題一覧表] [分野別] [キーワード索引] [an error occurred while processing this directive]