Приветствую. Те кто ещё сам не решил, и хочет подумать самостоятельно лучше дальше не читать .
Саму задачу решил как и многие тут через мапу, потом передал значения как строки в лист, сделал сортировку и вернул на месту гуляющую "ё". Но мне стало интересно как было в "правильном решении", а там оказалась следующая загадочная конструкция:
int[] count = new int[alphabet.size()];
for (String line : list) {
for (char character : line.toCharArray()) {
int index = alphabet.indexOf(character);
if (index < 0) {
continue;
}
count[index]++;
}
}
Если давно решали задачу напомню: list это аррей лист строк. "alphabet" это массив чаров от "а" да "я" длинной в 33.
В целом конструкция понятна, но не понятно то место где происходит вся "магия" решения задачи, а именно:
int index = alphabet.indexOf(character);
Если кто то может объяснить буду благодарен.