カコモンノート

問4基本情報技術者 令和5年度 公開問題(科目B)

4 / 5問
令和5年度 公開問題(科目B)

次の記述中の に入れる正しい答えを,解答群の中から選べ。ここで,配列の要素番号は 1 から始まる。関数 add は,引数で指定された正の整数 value を大域の整数型の配列 hashArray に格納する。格納できた場合は true を返し,格納できなかった場合は false を返す。ここで,整数 value を hashArray のどの要素に格納すべきかを,関数 calcHash1 及びcalcHash2 を利用して決める。手続 test は,関数 add を呼び出して,hashArray に正の整数を格納する。手続test の処理が終了した直後の hashArray の内容は, である。

この問題の図
問題に添えられた図。出典は下に書いています。

選択肢をえらぶと、答えと解説が出ます

選択肢をえらぶと、
ここに答えと解説が出ます
正答 4

解説

この関数は、格納先を決める式を二つ持つ。一つ目の式が指したますに空きの印が残っていればそこへ入れ、既に値が入っていれば二つ目の式が指したますを試す。どちらも埋まっていれば何も入れずに失敗を返すので、先に入れた値が上書きされることはない。三つの数を順に入れると、二つ目と三つ目はどちらも一つ目の式でぶつかり、二つ目の式が指した別のますに入る。

KEY POINT
ハッシュの格納先は、一つ目の式が指すますが埋まっていたら二つ目の式で決める

「科目B」の他の問題

「科目B」42問をまとめて見る →

出典:令和5年度 基本情報技術者試験 科目B 問4(独立行政法人 情報処理推進機構(IPA))
独立行政法人情報処理推進機構(IPA)が公表している過去問題です。IPA の「過去問題の使用について」に基づき、IPA が指定する形で出典を明記して掲載しています(利用の許諾申請は不要)。問題文・選択肢の内容は変えていません。本文は IPA が公表した問題冊子の頁を人が読んで起こし、別の読み手が原本と突き合わせています。その都合で、改行・字間の空白は省き、英数字の全角・半角は元とそろえていない箇所があります。図表は IPA が公表した問題冊子のものです。解説は当サイトが独自に作成したもので、IPA とは関係ありません。