1

ハッシュ関数を実行するときに同じインデックスキーを返す2つの入力(例):「Smooth Criminal」と「Billie Jean」があります。二次プロービングを使用する場合、配列内の特定の要素を見つけるにはどうすればよいですか?

アレイ[]では、私は私のハードディスク上のMP3ファイルへのパスを保存したいと思います。

はのは、インデックスキーとして、彼らはリターン0の両方としましょう、そう「スムーズクリミナル」のインデックスに行く:0と「ビリージーン」インデックスへ行く0 + 1^2 = 1

私はファイルパスを見つけるだろうか両方の曲が同じ鍵を返すとき、配列の "Billie Jean"の?

おかげで再び二次プローブすることによって

答えて

1

、。最初に "Smooth Criminal"を見つけたインデックス0をチェックします。それはあなたが探していたものではありません。だから、あなたは "Billie Jean"を見つけるインデックス1を見る。あなたは終わった。

+0

ソングのタイトルに基づいて、ソングのファイルパスを配列に保存したい場合は、どちらの場合も同じキーを生成するタイトル付きハッシュ関数を実行します(0)。検索すると、一致するファイルパスがわからないのですか? – Kenci

+1

ハッシュ比較はキー比較の代理に過ぎません。等しいハッシュ値の後も、実際のキーを確認する必要があります。 – wildplasser

+0

私はちょっと混乱していると思いますが、実際の鍵をどのようにセクしますか?私の配列からは、曲のファイルパスのインデックス番号のみを取得できますか? – Kenci

関連する問題