大量の 2 次元の点でユークリッド距離によるルックアップを処理するアルゴリズムとデータ構造を開発しています。
Google Scholar でこれを調査しようとしましたが、まだ何も見つかりませんでした (おそらく、この問題が文献で通常何と呼ばれているのかわからないためです)。
これらは、私が検討した2つのアプローチです。
アプローチ 1: バケットを使用して 2 次元グリッドを作成します。ポイントをバケットに挿入し、各ポイントのバケットの参照を保持します。距離 D のポイント P のルックアップで、そのバケット B と、そのグリッド スクエアの角のいずれかが (B までの距離) < D であるすべてのバケットを取得します。最後に、これらすべてのバケット内のポイントを列挙し、P までの距離を計算します。 .
アプローチ 2: 2 つのリストを作成します。各リストには、座標 (x,y) のいずれかですべての点が並べられています。距離 D のポイント P のルックアップで、二分探索を実行してリストのそれぞれで 2 つのポイントを見つけ、ポイントが P < D までのチェビシェフ距離を持つ長方形領域を見つけます。最後に、P までのすべてのポイントのユークリッド距離を計算します。
しかし、最先端のアルゴリズムはこれよりもはるかに優れていると思いますか? これに関するアイデアは大歓迎です