Guten Abend alle miteinander,
ich bin ein JAVA Einsteiger und stehe nun vor einem mir unlösbaren Problem.
Ich habe ein Programm geschrieben, welches zählt wie oft jeder Buchstabe in einer Textdatei vorkommt.
Ich hab das so in etwa gemacht:
die Anzahl der Buchstaben wird richtig gezählt. Doch jetzt muss ich beide Arrays sortieren.
Und so komm ich auch zu meiner eigentlichen Frage. Das Array anzahl[] kann ich ja leicht mit Arrays.sort() sortieren. Doch nun würde ich gerne mein Array alphabet[] genau so sortieren wie das Array anzahl. Also anders gesagt würde ich die Buchstaben nach ihrer Häufigkeit sortiert ausgeben.
Im vorhinein schon vielen Dank für eure Hilfe!
mfg,
djoxn
ich bin ein JAVA Einsteiger und stehe nun vor einem mir unlösbaren Problem.
Ich habe ein Programm geschrieben, welches zählt wie oft jeder Buchstabe in einer Textdatei vorkommt.
Ich hab das so in etwa gemacht:
Java:
int[] anzahl = new int [26];
char[] alphabet = new char [] {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
int counter = 0;
/*Mithilfe einer doppelten for-Schleife überprüfe ich an jeder Stelle ob der char bei dieser Position mein jetziger Buchstabe ist (zB string.charAt[1] == alphabet[0]) falls das der Fall ist, wird mein counter um 1 erhöht. Am Ende der Schleife ist meine zB anzahl[0] += counter */
die Anzahl der Buchstaben wird richtig gezählt. Doch jetzt muss ich beide Arrays sortieren.
Und so komm ich auch zu meiner eigentlichen Frage. Das Array anzahl[] kann ich ja leicht mit Arrays.sort() sortieren. Doch nun würde ich gerne mein Array alphabet[] genau so sortieren wie das Array anzahl. Also anders gesagt würde ich die Buchstaben nach ihrer Häufigkeit sortiert ausgeben.
Im vorhinein schon vielen Dank für eure Hilfe!
mfg,
djoxn