Wie lasse ich dir Werte in einem Array zusammenrücken?

Igig1

Mitglied
Z. b ich habe einen int Array der Länge 6,
Code:
7    4         6       8 (Elemente) 
0    1     2   3   4   5 (Index)

Ich möchte jetzt, dass alle meine Elemente zusammenrücken, zurzeit ist im index 0 die 7, im Index 4 die 1, im Index 3 die 6 und im Index 5 die 8. In den anderen Indexstellen ist null.

Ich möchte jetzt dass im Index 0 die 7 bleibt, im Index 1 die 4, aber die 6 soll zum Index 2 kommen und die 8 zum Index 3 und die übrig gebliebenen Indexe sollen mit null gefüllt werden, wie bekomme ich das hin? Also dass die Arrays eingerückt werden, ohne dass die Reihenfolge der Elemente kaputt geht?
 
Zuletzt bearbeitet von einem Moderator:
Du meinst die Zahl Null (0), nicht die Referenz null.

Dann ist Deine Beschreibung widersprüchlich: "zurzeit ist im index 0 die 7, im Index 4 die 1, im Index 3 die 6 und im Index 5 die 8. In den andern Indexstellen ist null (Anm.: 0)" würde bedeuten
Code:
0 1 2 3 4 5 (Index)
7 0 0 6 1 8
Was weder zu dem von Dir angegebenen "Bild" am Anfang nicht passt und auch nicht zu "möchte jetzt dass im Index 0 die 7 bleibt, im Index 1 die 4, ..."

Dein Array sieht vermutlich so aus:
Code:
0 1 2 3 4 5 (Index)
7 4 0 6 0 8
und als Ergebnis willst Du haben
Code:
0 1 2 3 4 5 (Index)
7 4 6 8 0 0

Eine Möglichkeit wäre offensichtlich, durch das Array zu gehen und jede 0 mit dem nächsten Wert ungleich 0 zu vertauschen.
 
Du meinst die Zahl Null (0), nicht die Referenz null.

Dann ist Deine Beschreibung widersprüchlich: "zurzeit ist im index 0 die 7, im Index 4 die 1, im Index 3 die 6 und im Index 5 die 8. In den andern Indexstellen ist null (Anm.: 0)" würde bedeuten
Code:
0 1 2 3 4 5 (Index)
7 0 0 6 1 8
Was weder zu dem von Dir angegebenen "Bild" am Anfang nicht passt und auch nicht zu "möchte jetzt dass im Index 0 die 7 bleibt, im Index 1 die 4, ..."

Dein Array sieht vermutlich so aus:
Code:
0 1 2 3 4 5 (Index)
7 4 0 6 0 8
und als Ergebnis willst Du haben
Code:
0 1 2 3 4 5 (Index)
7 4 6 8 0 0

Eine Möglichkeit wäre offensichtlich, durch das Array zu gehen und jede 0 mit dem nächsten Wert ungleich 0 zu vertauschen.
Danke, aber wie realisiere ich das? Da hänge ich leider sehr
 

Neue Themen


Zurück
Oben