N-D平面内のある点のためのユニークな識別ハッシュコードは何でしょうか?

2Dポイントの場合、次のようになります。 – x_value * 10 ^((int)log_10(max_y_value))+
y_value

N次元空間の点ではどうなりますか?

ありがとう!

ベストアンサー

構造体のハッシュコードを計算する典型的な方法は、23と37などの比較的小さい2つの素数を選択し、それらをP1とP2と呼ぶこととし、次にマルチコンポーネント構造のハッシュコードを次のように計算することです。

hashcode = P1
foreach component in structure
    hashcode = hashcode * P2
    hashcode = hashcode + hashcode-of-component

「コンポーネントのハッシュコード」は、整数である場合にはコンポーネントの値そのものか、整数に変換されることができるもの(つまり、メモリバイトを整数に変換したもの)か、その構造のハッシュコードのいずれかです。

N次元空間における点の場合:

hashcode = P1
count from 1 to N
    hashcode = hashcode * P2
    hashcode = hashcode + component[counting-index]

点の各次元値を整数に再解釈できると仮定して

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です