2 つの配列リスト内のすべての重複ポイントを削除しようとしています。各リストは、どの国がどの国にリンクしているかを見つけることによって作成されます。リンクすると、両方の配列に同時に新しいポイントが作成されます。
アイデアは、両方の配列のサイズ (または 1 つのサイズ) をループして、ポイント間に線を引くことができるようにすることです。
現時点での問題は、ポイントが削除されていないか、すべて削除されていることです。
次の配列があります
//Different values of course.
Array1 = [Point[1,5]],[Point[1,5]],[Point[1,5]][Point[1,5]]
Array2 = [Point[1,5]],[Point[1,5]],[Point[1,5]][Point[1,5]]
重複する配列を削除するコードは次のとおりです。
private ArrayList<ArrayList<Point>> checkDuplicatePoints(ArrayList<Point> Array1, ArrayList<Point> Array2)
{
for(int index1 = 0; index1 < Array1.size(); index1++)
{
for(int index2 = 0; index2 < Array2.size(); index2++)
{
//So not the same position in the list.
if(index1 != index2)
{
if(
Array1.get(index1).x == Array2.get(index2).x &&
Array1.get(index1).y == Array2.get(index2).y
)
{
Array1.remove(index1);
Array2.remove(index2);
checkDuplicatePoints(Array1, Array2);
}
}
}
}
ArrayList<ArrayList<Point>> n2DPointArray = new ArrayList<ArrayList<Point>>();
n2DPointArray.add(Array1);
n2DPointArray.add(Array2);
return n2DPointArray;
}