HOME»基本情報技術者試験掲示板»参考書  アルゴリズム×疑似言語  の問題が分からない
投稿する

参考書  アルゴリズム×疑似言語  の問題が分からない [5226]

 INTJ高校生さん(No.1) 
こんにちは。参考書「アルゴリズム×疑似言語」のP137「▶空欄a」の3行目。「hashTbl[h,1]が0であれば~最初のデータです。」が分かりません。つまり、「hashTbl[h,1]が0であれば~=最初のデータです。」ってことですよね。おかしくないですか。だってすべての要素は0で初期化されてるんじゃないですか?だったら全ての要素は「同じハッシュ値を持つ最初のデータ」になるんじゃないんですか?多分僕が変な勘違いをしていると思うので解説お願いします。
2023.12.25 12:55
ニュートンさん(No.2) 
要素一個ずつトレスしてみる方法が一番わかやすいと思います。確かに、hashTbl[h,1]が0として初期化してあるが配列の要素12と17の場合にhが3と計算になります、ですが12が既に(3、1)に入っており17の場合にはelse条件式に移ります。因みにこの場合hashTbl[h,1]が0じゃなく12です。
2023.12.25 13:32
 INTJ高校生さん(No.3) 
この投稿は投稿者により削除されました。(2023.12.25 16:33)
2023.12.25 16:33
 INTJ高校生さん(No.4) 
すみません。それは理解しているんですけど、日本語の問題だと感じていて例えば要素番号1の場合、あまりが5なので  hashTbl[5,1]=0  という関係は成り立っていますよね。だけど「それが成り立てば必ずdate[i]が、同じハッシュ値をもつ最初のデータです」みたいなことが書かれているんですけど、ハッシュ値が5のハッシュ値は1つしかないので本書3行目は少し違和感があるんですけどどうですか。とんちんかんな事を言っていたら申し訳ありません
2023.12.25 16:34
boyonboyonさん(No.5) 
FE シルバーマイスター
参考書を持っていないので、書き込み内容で考えました。

>「hashTbl[h,1]が0であれば~最初のデータです。」
の解釈ですが、
「hashTbl[h,1]が0ということは、初期化状態でまだデータは入っていない。だから、現在対象としているデータがここに入るならば最初のデータになります。
のように思えますが如何ですか。
ピントがずれていたらすみません。
2023.12.26 00:37
アラフォー文系さん(No.6) 
私は、

同じハッシュ値(3)を持つ最初のデータ(12)
同じハッシュ値(3)を持つ2番目のデータ(17)
同じハッシュ値(3)を持つ3番目のデータ(22)

というように読みました。
boyonboyon様と同様の見解です。
2023.12.26 18:46
 INTJ高校生さん(No.7) 
みなさんのおかげで理解することができました。ありがとうございました^_^
2023.12.27 17:50
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop