平面上の特定の点に最も近いx個の点を見つけるために、高速なアルゴリズムを見つけたいと思います。
私たちは実際にはあまり多くのポイント(1,000から100,000の間)を扱っていませんが、これらのポイントすべてにx個の最も近いポイントが必要です。(ここで、xは通常5から20の間です。)
C#で書く必要があります。
ユースケースに関するもう少しコンテキスト:これらのポイントはマップ上の座標です。(これは、平面について正確に話しているわけではないことを意味しますが、投影の問題に対処することは避けたいと思います。)他の多くのポイントが近くにあるエンドポイントでは、あまり多くないポイントは赤で表示する必要があります。それらに近いポイントは緑色で表示されます。これらの2つの極値の間で、ポイントはカラーグラデーション上にあります。