ポイント(都市)の配列があり、最も近い10個のポイントを見つけてそれらを接続してグラフを作成する最良の方法を探しています。各ポイントから正確に 10 接続する必要があります。
ポイントクラス:
public class City
{
int key;
public int population;
Point position;
City(int key, int population, Point position)
{
this.key = key;
this.population = population;
this.position = position;
}
void setPopulation(int newPopulation)
{
this.population = newPopulation;
}
}
これで、すべてのポイントが 1 つの配列に含まれるようになりました。
City[] cities = new City[3000];
すべてのポイントには座標があります (すべての座標は 5 の倍数です。これは、各ポイントに 5 (km) よりも遠い最も近いポイントがあることを確認する必要があるためです)。
また、すべての都市はランダムに生成されたので、配列内の最初の都市は左上隅に、2 番目の都市は右下隅に配置できます。
それが、私がそれらを描くとき、すべての点を見る方法です。
ここでアドバイスが必要です。最も近いポイントを見つける方法と、それらを接続してグラフを作成する方法です。
何かアドバイス?返信ありがとうございます。