電子書籍の厳選無料作品が豊富!

この二つの問題を教えて欲しいです。
次の数列をヒープに格納した際、10はどの節点に格納されますか?また計算過程を教えて欲しいです。
数列:{20,17,18,16,9,5,7,10,13,8}

次の数列をハッシュ法を用いて配列番号0〜23に格納する。27はどこに格納されるか
数列:{5,12,7,27,11,17,3,28,10,14,8,20,25,15,23,39)
ハッシュ関数:h(x)=x%24(xを24で割った余りを求める)

A 回答 (2件)

要素番号0=20,1=17,2=18,3=16,4=9,5=5,6=7,7=10,8=13,9=8として、


10は要素番号7なので,3の子1になると思います。
ハッシュ値は5=5,12=12,7=7,27=3,11=11,17=17,3=3,28=4,10=10,14=14,8=8,20=20,25=1,15=15,23=23,39=15なので、
27は配列番号3に格納されます。27を格納する前に3にデータが入っていないのでそのまま3に入れていいでしょう。
    • good
    • 0

1. ヒープを作るアルゴリズムにもよるので、それが不明だと決められません。


また「どの節点」というのも、どう表現するかの指示がありません。

2. ハッシュが衝突した場合の処理についての言及がないので、答えられません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!