Prüfen ob Arrays nur mit einem Wert belegt sind

Javanoob567

Neues Mitglied
Hallo,

ich habe ein Problem, ich habe ein arrays mit 9 Stellen also 0 bis 8.
ich möchte dort zahlen von 0 bis 8 einlegen, jetzt will ich das aber nur jede Zahl einmal vorkommt.

int[] a = new int[9];
a[0] = 0;
a[1] = 4;
a[2] = 2;
a[3] = 3;
a[4] = 1;
a[5] = 7;
a[6] = 5;
a[7] = 8;
a[8] = 6;

leider habe ich keine Idee wie ich am besten anfangen soll.

würde mich über eure Hilfe freuen.

LG
 
Trag einfach die gewünschten Zahlen irgendwie in dein Array ein, z.B. aufsteigend sortiert (a[0] = 0, a[1] =1, usw...)
Anschließend kannst du mit Hilfe von Arrays.asList() und Collections.shuffle() dein Array mischen.
 
CountingSort oder eine HashMap / HashSet bietet sich auch am, um alle "Vorkommen" zu zählen.

Oder ein boolean-Array von 0 bis 9...

Da fällt mir so viel ein, aber "gemischt" ist es doch schon.
 
wird denn irgendwo gesagt, dass die Zahlen zufällig verteilt sein müssen?
Denn ansonsten könnte man ja folgendes machen:

Java:
for (int i = 0; i < a.length; i++) {
a[i] = i;
}
 

Zurück
Oben