ファイルシステム(全18問中5問目)
No.5解説へ
格納アドレスが1~6の範囲の直接編成ファイルにおいて,次の条件でデータを格納した場合,アドレス1に格納されているデータのキー値はどれか。
〔条件〕
〔条件〕
- キー値が3,4,8,13,14,18の順でデータを格納する。
- データのキー値を5で割った余りに1を加えた値を格納アドレスにする。
- 格納アドレスに既にデータがある場合には,次のアドレスに格納する。これを格納できるまで繰り返す。最終アドレスの次は先頭とする。
- 初期状態では,ファイルは何も格納されていない。
出典:平成28年秋期 問20
- 8
- 13
- 14
- 18
広告
解説
各キー値から格納アドレスを計算し、データが格納される位置を順番に考えていきます。解説中の図は左からアドレス1,2,…,6とします。
[キー値 3]
3÷5 の余りである3に1を加えたアドレス4に格納されます。
3
[キー値 4]
4÷5 の余りである4に1を加えたアドレス5に格納されます。
34
[キー値 8]
8÷5 の余りである3に1を加えたアドレス4が格納位置ですが、既にデータが存在するため〔条件〕に従い2つ後の位置に格納されます。
348
[キー値 13]
13÷5 の余りである3に1を加えたアドレス4が格納位置ですが、既にデータが存在するため3つ後の位置に格納されます。(先頭に戻る)
13 348
[キー値 14]
14÷5 の余りである4に1を加えたアドレス5が格納位置ですが、既にデータが存在するため3つ後の位置に格納されます。(先頭から2つ目)
1314 348
[キー値 18]
18÷5 の余りである3に1を加えたアドレス4が格納位置ですが、既にデータが存在するため残る1つのアドレスに格納されます。
131418348
したがってアドレス1に格納されるデータのキー値は13になります。
[キー値 3]
3÷5 の余りである3に1を加えたアドレス4に格納されます。
3
[キー値 4]
4÷5 の余りである4に1を加えたアドレス5に格納されます。
34
[キー値 8]
8÷5 の余りである3に1を加えたアドレス4が格納位置ですが、既にデータが存在するため〔条件〕に従い2つ後の位置に格納されます。
348
[キー値 13]
13÷5 の余りである3に1を加えたアドレス4が格納位置ですが、既にデータが存在するため3つ後の位置に格納されます。(先頭に戻る)
13 348
[キー値 14]
14÷5 の余りである4に1を加えたアドレス5が格納位置ですが、既にデータが存在するため3つ後の位置に格納されます。(先頭から2つ目)
1314 348
[キー値 18]
18÷5 の余りである3に1を加えたアドレス4が格納位置ですが、既にデータが存在するため残る1つのアドレスに格納されます。
131418348
したがってアドレス1に格納されるデータのキー値は13になります。
広告