平成19年 秋期 基本情報技術者 午前 問13

十分な大きさの配列Aと初期値が0の変数pに対して、関数f(x)とg( )が次のとおり定義されている。
配列Aと変数pは、関数fとgだけでアクセス可能である。
これらの関数が提供するデータ構造はどれか。

 function f(x) {
   p=p+1
   A[p]=x
   return None
 }

 function g( ) {
   x=A[p]
   p=p-1
   return x
 }

 ア  キュー  イ  スタック  ウ  ハッシュ  エ  ヒープ


答え イ


解説
関数f(x)とg( )について手続きの内容を見る。

  • 関数f(x)は、引数xの内容を配列A[ ]のp+1のところに格納する手続きである。
    ここで、変数pは配列A[ ]のカレントの位置を示す変数であることがわかる。
  • 関数g( )は、配列A[ ]のカレントの位置のデータを取り出す手続きであり、取り出した後、変数pをp-1している。
これから、このデータ構造はスタック(イ)である。


キーワード
・データ構造

キーワードの解説
  • データ構造
    コンピュータから効率的にデータを操作するためには、データを決まったルールで格納し、アクセスの方法もルール化することが必要であり、このルール化したデータのことをデータ構造と呼ぶ。
    代表的なデータ構造には、キュー、スタック、ハッシュ、ヒープ(2分木)などがある。

もっと、「データ構造」について調べてみよう。

戻る 一覧へ 次へ