Effektive true/false Überprüfung eines 2D arrays

Mustang123

Mitglied
Schon wieder ich :D

Aber kein Code, nur eine Frage. Gibt es effektivere Methoden ein 2D boolean Array auf true bzw false Einträge zu überprüfen, als eine for schleife drüberlaufen zu lassen? Das problem ist nämlich dass das Feld sehr groß ist und ich es sehr oft checken muss (es ist eine Abbruchbedingung für eine Rekursion).

Als ausgabe reicht wohl ein true falls im array mindestens ein true ist. Nur google spuckt dazu nichts brauchbares aus.
 

Thallius

Top Contributor
Ich verstehe nicht ganz das Problem. Wenn du nur testen willst ob irgendein Eintrag in dem Array false ist um false als Ergebnis zu haben, dann brauchst du doch gar kein Array. Dann solltest du nur ein Flag haben das du eben initial auf true setzt und an der Stelle wo du im Moment deine Einträge in das Array schreibst, fragst du einfach ab ob der nächste Eintrag false ist und wenn ja änderst du das Flag auf false.
Wenn du die Anzahl von true und false in dem Array brauchst, dann machst du statt dem Array eben zwei Ints und zählst immer das eine oder andere hoch.

Ich sehe keinen wirklich Anwendungsfall für Dein Array.

Gruß

Claus
 

Mustang123

Mitglied
Ich verstehe nicht ganz das Problem. Wenn du nur testen willst ob irgendein Eintrag in dem Array false ist um false als Ergebnis zu haben, dann brauchst du doch gar kein Array. Dann solltest du nur ein Flag haben das du eben initial auf true setzt und an der Stelle wo du im Moment deine Einträge in das Array schreibst, fragst du einfach ab ob der nächste Eintrag false ist und wenn ja änderst du das Flag auf false.
Wenn du die Anzahl von true und false in dem Array brauchst, dann machst du statt dem Array eben zwei Ints und zählst immer das eine oder andere hoch.

Ich sehe keinen wirklich Anwendungsfall für Dein Array.

Gruß

Claus

Ich habe eine recht konfuse Rekursion die quasi im zickzack quer über ein Bild läuft. Der 2D array dient nur dazu zu überprüfen ob jedes pixel schonmal bearbeitet wurde, was bei true die abbruchbedingung liefert.

Ich hab das jetzt mit der flag Methode gemacht und ganz am Ende noch einmal mit der for schleife gescannt.
 

Neue Themen


Oben