Einzelnen Beitrag anzeigen

Periander

Registriert seit: 27. Sep 2006
16 Beiträge
 
#1

Felder,Ketten im Array finden

  Alt 26. Jul 2011, 17:00
Hallo,

schwierig zu formulieren, was für einen algorithmus ich gerade versuche zu bauen.
es geht um folgendes:

ich habe ein array einer beliebigen größe.
dadrin sind verschiedene zahlenwerte.
mein beispiel hier hat zur veranschaulichung nur die einträge "x" und "_"

|x|x|x|_|x|_|
|_|x|x|_|x|_|
|_|_|x|x|x|_|
|_|_|x|_|_|_|
|x|x|x|_|x|x|

ich will jetzt die zusammenhängenden felder identifizieren, wenn ich mir also die obere linke ecke anschaue, dann
will ich als ergebniss das gesamte zusammenhänge feld, von hier 14 "x"en. und wenn ich mir die untere rechte ecke
anschaue nur ein feld bestehend aus 2 "x"en.

zusammenhängend ist so eine kette wenn entweder oben/unten oder links/rechts ein weiteres "x" kommt.
also schräg zählt nicht.

bisher ist es mir nicht gelungen da was gescheites zu finden.
wenn ich zuerst schaue ob von meinem feld ausgehend rechts/links/oben/unten ein weiteres "x" kommt ist das
zwar ein guter ansatz, aber dann wird das relativ kompliziert, wenn dann ein ergebnis mehrere anliegende positionen liefert...

hat von euch einer eine idee, wie man das lösen kann ohne ein buch mit lauter "if" anweisungen zu schreiben?
  Mit Zitat antworten Zitat