十分な大きさの配列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分木)などがある。
もっと、「データ構造」について調べてみよう。
戻る
一覧へ
次へ
|