2

2次元の空間ハッシュについてです...(私が話している空間ハッシュでない場合はすみません)
x座標とy座標を、バケット(グループ)を表す配列のインデックスに変換します。
私が読んだ、そして私自身が使用したすべての論文/記事: AS3では、すべてのxとyのインデックスを事前に計算し、結果をxMap:Vectorなどの2つのベクトルに格納する
int grid_cell = x/cell_size + y/cell_size*width;

方が効率的でしょうか。<int>にはx/cell_sizeが含まれますおよびyMap:Vector。<int> y / cell_size * width次に、次を使用して取得します。
int grid_cell = xMap[x] + yMap[y]; // grid being the array of buckets

つまり、AS3のy / cell_size*widthなどの計算よりも高速にベクトルからアイテムを取得していますか??
私自身のベンチマークの結果は、私が決定するために大きく変動します。これは、パフォーマンスにとって重要な機能です。

4

1 に答える 1

0

ベクトルが本当に大きくない限り、値を計算するよりも検索する方が速くなります。

于 2013-01-24T12:27:02.747 に答える