Kann mir jemand einen Tip geben wie man am einfachsten das häufigste Zeichen eines Char-Array ermittelt?
Ich hätte es jetzt so gemacht:
Es wird ein zweites array (array) angelegt in dem für jeden buchstaben aus dem char array a die häufigkeit gespeichert werden soll.
Jetzt wird mit einer doppelschleife jeweils ein element mit allen anderen verglichen und falls es gleich ist wird im array eins dazugezählt.
Jetzt muss man das array array nochmals durchlaufen und den größten wert ermitteln.
Geht das auch einfacher?
Ich hätte es jetzt so gemacht:
Code:
public static int getk(char[] a){
int laenge= a.length;
int[] array = new int[laenge]; // neues array anlegen für die häufigkeit der einzelnen buchstaben
for(int i=0;i<=a.length-1;i++){
for(int j=0;j<=a.length-1;j++){
if(a[i]==a[j]){
array[i]= array[i] +1; // wenn ein buchstabe mehrmals auftritt fuer jeden auftritt eins addieren
}
}
}
}
Es wird ein zweites array (array) angelegt in dem für jeden buchstaben aus dem char array a die häufigkeit gespeichert werden soll.
Jetzt wird mit einer doppelschleife jeweils ein element mit allen anderen verglichen und falls es gleich ist wird im array eins dazugezählt.
Jetzt muss man das array array nochmals durchlaufen und den größten wert ermitteln.
Geht das auch einfacher?