2D-array problem (sortieren)

A

Alex902000

Gast
Hallo alle zusammen,

wahrscheinlich ist er relativ simpel aber ich bekomms einfach nicht hingecodet...

ich habe ein 2 dimensionales array ( int[][] ). Dies kann man sich ja in zeilen/spalten als tabellenform vor Augen führen.

Falls irgendwann in meinem Programm der Fall eintritt, dass eine Spalte nur aus der Zahl "0" besteht soll diese Spalte ganz nach rechts geschoben werden und alle anderen spalten sollen nach links aufrücken.

Zur Verdeutlichung ein bild:
367vwpzw.jpg


Um die Leerzeile zu finden gibt es diese möglichkeit:
Java:
for(int j=0; j<10; j++)
		{
			if(feld[j][9] == 0)
			{
				leerzeile = j;
				break;
			}
		}

allerdings komm ich mit dem for schleifen wirr warr dass bei mir danach kommt einfach nicht klar, gibt es irgendeine simple Lösung bezüglich meines problems? :)

Vielen Dank und mit freundlichem Gruß
Alex
 
A

Alex902000

Gast
Natürlich prüft der Java Code nur auf die unterste null und nicht die ganze Spalte, sorry das habe ich vergessen zu sagen.. in meinem programm kann aber nur ganz unten eine null stehen sofern darüber auch nur nullen sind .. hätte ich vielleicht sagen sollen ;)
 
S

SlaterB

Gast
in deinem Fall wirkt sich günstig aus, dass feld[j] usw. eigenständige eindimensionale int-Arrays sind,
die kannst du also komplett tauschen:

Java:
int[] temp = feld[5];
feld[5] = feld[6];
feld[6] = temp;

> if(feld[j][9] == 0)
dass das letzte Feld 0 ist gilt allerdings für ganze drei Spalten in deinem Beispiel, obwohl nur eine davon komplett 0 ist..,
dann hast du wohl doch eine zeilenbasierte Array-Struktur, dann gehts nicht so leicht,
ok, dann Schleifen Schleifen Schleifen,
poste doch Code, Versuche, Fehlergebnisse oder was auch immer,
versuche es vielleicht erstmal damit, eine 0 in einem eindimensionalen Array zu verschieben?
oder eine 0-Spalte in einer 3x3-Matrix?
 
Zuletzt bearbeitet von einem Moderator:
A

Alex902000

Gast
Hallo,

danke für die schnelle Antwort!

die Grafik habe ich nur schnell zur veranschaulichung des problems erstellt und die eingefügten Zahlen entsprechen nicht der Zahlen im Programm.
Demnach ist die auswahl der Zahlen in der Grafik etwas unglücklich, das stimmt!
In der Realität, kann es allerdings nicht sein, dass unten eine 0 alleine steht, falls andere Zahlen noch "darüber" sind. Da vorher alle Zahlen, falls sie eine 0 unter sich haben nach unten rutschen (das auch ohne Probleme funktioniert!).

Zu deiner Lösungsmöglichkeit... also ist es so, dass falls ich ein Array " int[][] feld = new int[10][11]; " habe und dieses 2 dimensionale Array feld nur mit " feld[2] " anspreche er direkt meine gesamte Zeile "nimmt" ? sonst verstehe ich die Lösung nicht so recht :-/

Danke!!
 
S

SlaterB

Gast
hab inzwischen noch editiert, also alles in der Schwebe,
hängt von genauer Zusammensetzung ab, ob die Unterarrays Zeilen oder Spalten beschreiben usw.

wie auch immer, ich habe dir den Hinweis gegeben, dass in einem zweidimensionalen Array array[j] etwas für sich greifbares ist,
ein int[] bei einem int[][],
Details muss man gar nicht besprechen, dass kannst du alles ausführlich testen

eine weitere konkrete Frage sehe ich noch nicht, versuche bitte zunächst selber im Code irgendwas,
siehe auch unbedingt Hinweise am Ende des ersten Posts von mir,
 
A

Alex902000

Gast
Java:
//Suche leerspalte (Getestet: findet die richtige!)
		int ls = 100;
		for(int j=0; j<16; j++)
		{
			if(feld[j][9] == 0)
			{
				ls=j;
				break;
			}
		}

		if(ls != 100)
		{
			//Kopiere rechten Teil des Arrays neben der 0-Spalte in ein temp array
			int[][] temp = new int[16][10];
			for(int i=0; i<10; i++)
			{
				for(int j=ls+1; j<16; j++)
				{
					temp[j][i] = feld[j][i];
				}
			}
			
			//Kopiere temp array zurück mit einer spalte nach links verschoben und mach die letzte Spalte zu einer 0 Spalte
			for(int i=0; i<10; i++)
			{
				for(int j=ls; j<16; j++)
				{
					if(j+1 < 16)
						feld[j][i] = temp[j+1][i];
					else
						feld[j][i] = 0;
				}
			}
		}

Also irgendwie ist das leicht bescheuert.. :p
mein feld ist [10][16] groß, er verschiebt jetzt sogar nach links, allerdings nicht so wie er soll.. er löscht z.t. auch hinten irgendwelche felder.. ganz komisch.. naja ich muss mal pause machen und es später nochmal neu ansetzen denk ich!
Danke für die Hilfe!!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Sumo_ow "ArrayIndexOutofBoundsException: 2" Array Problem Allgemeine Java-Themen 6
xGh0st2014 Problem mit Java Array Allgemeine Java-Themen 1
kodela Problem mit strukturiertem Array Allgemeine Java-Themen 18
A Array Problem Allgemeine Java-Themen 8
G problem: array aus objekten Allgemeine Java-Themen 10
E Problem mit Array vergleich Allgemeine Java-Themen 4
B Array Parameter Problem Allgemeine Java-Themen 3
S Problem mit Array Allgemeine Java-Themen 9
M Anzahl Farbwerte (RGB) im Array speichern - Problem Allgemeine Java-Themen 13
J JAXB Problem mit (zu großem?) Array Allgemeine Java-Themen 3
J Fettes Problem mit vierdimensionalen Array-Variationen Allgemeine Java-Themen 17
L array.length-Problem Allgemeine Java-Themen 60
W Problem bei der Suche (binarySearch) vom deutschen Sonderzeichen "ß" im einem Array Allgemeine Java-Themen 6
A Problem bei Übergabe von Werten in ein double Array. Allgemeine Java-Themen 21
G mehrere url's in ein array (problem mit // ) Allgemeine Java-Themen 7
P [Problem] Dreidimensionales Array Allgemeine Java-Themen 5
G Problem mit Array Allgemeine Java-Themen 3
J array-Problem Allgemeine Java-Themen 6
K Array-Problem Allgemeine Java-Themen 2
F Problem mit String-Array Allgemeine Java-Themen 2
LucasGlockner Effizienter byte-Zugriff auf ein long[]-Array Allgemeine Java-Themen 8
8u3631984 Frage Performance bei Linked List und Array List Allgemeine Java-Themen 5
M Queue mit einem Array implemetieren Allgemeine Java-Themen 16
M Array Rang eines Elements Allgemeine Java-Themen 4
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
TheSepp Wie kann man Leerzeichen aus einer Array liste entfernen? Allgemeine Java-Themen 10
B HeapSort für Array of Strings funktioniert nur teilweise Allgemeine Java-Themen 3
noah1407 Array Allgemeine Java-Themen 3
D Methoden Teil-Array mit Maximalwert bestimmen Allgemeine Java-Themen 23
N einem Array Objekte hinzufügen die ihr Array position gespeichert haben Allgemeine Java-Themen 34
N zweidimensionalen Array in dreidimensionalen Array speichern Allgemeine Java-Themen 4
N Schnellste Methode, ein Array durchzugehen? Allgemeine Java-Themen 9
T Objekt Array Aufgabe mit Busdatenbank Allgemeine Java-Themen 2
L Array und Index Allgemeine Java-Themen 26
L die 3 größten Zahlen im Array Allgemeine Java-Themen 1
G jToggleButton in Array/ArrayList Allgemeine Java-Themen 12
S Übergabe eines Sortierkriteriums für ein Artikel Array mittels BiPredicate<Artikel, Artikel> Allgemeine Java-Themen 13
Willi.We Array sortieren Allgemeine Java-Themen 5
gotzi242 Array Summe bestimmen tipps? Allgemeine Java-Themen 14
H Matrix ohne Array erstellen Allgemeine Java-Themen 9
Aboya Char Array rekursiv vergleichen Allgemeine Java-Themen 15
V4ll3.Wff Array in Java Allgemeine Java-Themen 4
Noahscript Aus einem byte Array Steuerungszeichen und Code bekommen und ersetzen Allgemeine Java-Themen 3
H Array Sportschütze Allgemeine Java-Themen 6
M Array verändern Allgemeine Java-Themen 1
A JavaFX 2 dimensionales array Allgemeine Java-Themen 1
LimDul Direktes return eines Array geht nicht Allgemeine Java-Themen 20
S Array dynamisieren oder ArrayList verwenden? Allgemeine Java-Themen 17
M Java 2D Array für ein Grid erstellen ? Allgemeine Java-Themen 2
H Array mit dem Datentype String[] initializieren Allgemeine Java-Themen 7
L ArrayList mit String Arrays in ein Array umwandeln Allgemeine Java-Themen 1
H Elemente aus ArrayList in Array speichern Allgemeine Java-Themen 8
E Datentypen Wie kann ich die Längen der unterschiedlichen Ebenen aus einem Objekt lesen von dem ich weiß, dass es ein mehrdimensionaler Array ist? Allgemeine Java-Themen 3
N Byte Array in Java "dekomprimieren" Allgemeine Java-Themen 3
parrot Array Aufgabe Allgemeine Java-Themen 3
N String Array Eingabe Allgemeine Java-Themen 6
R Warum wird mir in der Konsole das "Standard Array" ausgegeben? Allgemeine Java-Themen 2
N Variablen Array Länge ändern. Allgemeine Java-Themen 8
D Kgv aller Paare aus einem Array mit n integer berechnen Allgemeine Java-Themen 5
W Enumeration ein Array/List als Eigenschaft mitgeben - warum geht das nicht? Allgemeine Java-Themen 0
Drachenbauer Wie stelle ich fest, ob ein Objekt in meinem Array vorkommt? Allgemeine Java-Themen 5
F Datei in String-Array einlesen Allgemeine Java-Themen 8
L Objekt aus Objekt-array "löschen" Allgemeine Java-Themen 2
I Array Parameter mit 2 Klassen - NullPointerException Allgemeine Java-Themen 3
X Größten Werte in meinem Array löschen? Allgemeine Java-Themen 16
E Angabe wie groß Array sein soll und in for-schleifen diesen Array füllen Allgemeine Java-Themen 3
F 3 Dimensionales Array mit Allgemeine Java-Themen 9
M Steueralgorithmus verwandelt Array in Anfangszustand Allgemeine Java-Themen 9
W Array vs. ArrayList vs. HashMap Allgemeine Java-Themen 20
D Datentypen 2-3 Baum erstellen mit geordnetem int-array Allgemeine Java-Themen 0
T Objekt in Array packen Allgemeine Java-Themen 6
M Zahlen in Array anordnen Allgemeine Java-Themen 8
M Eclipse Unvollständigen Array ansteuern Allgemeine Java-Themen 2
D Erste Schritte Im Array Werte tauschen Allgemeine Java-Themen 5
Xge For/Array Error: IndexOutOfBounds Allgemeine Java-Themen 4
M Wie kann ich ein int[] Array in einer Methode benutzen? Allgemeine Java-Themen 6
FRI3ND Datentypen Date-Array sortieren - Text mitnehmen? Allgemeine Java-Themen 7
D Integer-Array variabler Größe mit Zahlen befüllen (Schleifen) Allgemeine Java-Themen 0
J Variablen Array ertellen bei model.put Allgemeine Java-Themen 13
S Eindimensionales Array in zweidimensionales Array speichern Allgemeine Java-Themen 5
R convert 2d array list to 2d array Allgemeine Java-Themen 1
J json Array würfel Spalten durcheinander Allgemeine Java-Themen 9
MiMa Array umbau oder Alternative? Allgemeine Java-Themen 5
L Datentypen 3D Array Allgemeine Java-Themen 3
M 2D Array mit unterschiedlichen Längen erstellen und befüllen Allgemeine Java-Themen 11
Mario1409 Methoden JSON Array von URL Allgemeine Java-Themen 8
E Swing Array mit Bildern in GUI darstellen Allgemeine Java-Themen 2
P Array einer abstrakten Klasse Allgemeine Java-Themen 4
H Zweidimensionales Array - Zellen der Tabelle verbinden Allgemeine Java-Themen 2
M Zweidimensionales Array mit Binärzahlen füllen Allgemeine Java-Themen 8
M Array aus Thread Objekten erstellen Allgemeine Java-Themen 2
kodela Dynamisches Array in einer Klasse Allgemeine Java-Themen 5
G Array ohne Aufzählungszeichen ausgeben Allgemeine Java-Themen 6
J Wie kann ich ein Java Array als Säulendiagramm ausgeben? Allgemeine Java-Themen 2
Z 2D Array Pixels reparieren Allgemeine Java-Themen 2
S Algorithmus welcher True-Werte in einem Array findet und auswertet. Allgemeine Java-Themen 5
B Polibios Array erweitern Allgemeine Java-Themen 1
R Index in einem Array löschen Allgemeine Java-Themen 10
R Index in einem Array löschen Allgemeine Java-Themen 2
U Methoden Algorithmus MergeSort String [ ] array sortieren programmieren Allgemeine Java-Themen 17

Ähnliche Java Themen

Neue Themen


Oben