基本情報トップに戻る
練習問題難易度: 標準2012年度

基本情報技術者 過去問練習問題 第6問

問題

十分な大きさの配列 A と初期値が 0 の変数 p に対して、関数 f(x) と g() が次のとおり定義されている。配列 A と変数 p は、関数 f(x) と g() だけでアクセス可能である。これらの関数が操作するデータ構造はどれか。 function f(x) { p = p + 1; A[p] = x; return None; } function g() { x = A[p]; p = p − 1; return x; }

選択肢

  1. 1キュー
  2. 2スタック
  3. 3ハッシュ
  4. 4ヒープ

正解

2. スタック

詳しい解説を見る

解説

f(x) は p を増やしてから A[p] に値を格納(プッシュ)し、g() は A[p] の値を取り出してから p を減らす(ポップ)。常に最後に格納した位置 p から取り出すため、後入れ先出し(LIFO)になる。これはスタックの動作であり「イ」が正しい。キューは先入れ先出し(FIFO)で動作が異なる。(出典: 平成24年度 春期 基本情報技術者試験 午前 問6)

一問一答

科目A 180問+科目B 60問

練習問題の関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。