package com.javarush.task.task18.task1821;
import java.io.FileReader;
import java.io.IOException;
/*
Встречаемость символов
*/
public class Solution {
public static void main(String[] args) throws IOException {
int[] aSCII = new int[128];
try(FileReader fr = new FileReader(args[0])) {
while (fr.ready()) {
aSCII[fr.read()]++;
}
}
for (int i = 0; i < aSCII.length; i++) {
if (aSCII[i] != 0) {
System.out.println((char) i + " " + aSCII[i]);
}
}
}
}Shdbdbd Susjebj
22 уровень
Объясните мне это решение кто-нибудь
Обсуждается
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #2322530
6 октября 2020, 11:54
так как байт символа число, то вместо HashMap можно сделать массив чисел, где индекс и будет байтом. соответственно при чтении файла, если встретился байт, то значение элемента под индексом = байт инкрементируется. к тому же он по умолчанию отсортирован.
дальше выводятся все элементы, значения которых больше 0
0