webForumDet fria alternativet

gruppera ur array

1 svar · 201 visningar · startad av henrikjohansson

henrikjohanssonMedlem sedan maj 2000360 inlägg
#1

Jag har en endimensionell array som innehåller massa X och Y koordinater

(använder c#)

för att plocka ur alla värden använder jag mig av
foreach (Point p in minlista)
{
//bla bla
}

Nu vill jag plocka ut grupper ur denna arrayen där x och/eller y skiljer max 2

skickar med en bild med :) där alla röda pluppar är värden i arrayen och det gröna är hur den skall gruppera.. det räcker med att ha fyrkantiga grupper...

Hur löser jag detta med kod?
Har stirrat mig blind på diverse test jag gjort.. har inte lyckats riktigt bra så därför frågar jag här bland proffsen.

bild.png
juventus1Medlem sedan dec. 2000399 inlägg
#2

Här kommer en skiss på hur man kan göra

for (int i = 0;i < arr.length;i++) {
	for (int j = i;j < arr.length;j++) {
		if (Math.Sqrt(Math.Pow(p[i].x - p[j].x, 2) +
Math.Pow(p[i].y - p[j].y, 2)) <= 2) {
			result.add(p[i]);
			result.add(p[j]);
		}
	}
}
// Result kan vara t ex en ArrayList

EDIT: Ändra villkoret för if:en. Inte säker på att det fungerar som du vill.

124 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)