Я работаю над некоторым кодированием Хаффмана, и я хотел бы иметь возможность распечатать таблицу частот.
Однако я попробовал приведенный ниже код и получил 'несовместимые типы: запись не может быть преобразована в запись
for (Map.Entry entry: freq.entrySet ()) 'ошибка. Есть ли способ исправить это там, где я мог бы иметь возможность отображать таблицу частот, где она была бы больше в форме таблицы или массива вместо формы карты?
public static void buildHuffmanTree(String text)
{ // count frequency each character and store it in a map
Map<Character, Integer> freq = new HashMap<>();
for (int i = 0 ; i < text.length(); i++)
{
if (!freq.containsKey(text.charAt(i)))
{
freq.put(text.charAt(i), 0);
}
freq.put(text.charAt(i), freq.get(text.charAt(i)) + 1);
}
// Create a priority queue to store nodes of Huffman tree
// Notice that highest priority item has lowest frequency
PriorityQueue<Node> pq = new PriorityQueue<>((l, r) -> l.freq -
r.freq);
for (Map.Entry<Character, String> entry : freq.entrySet())
{
System.out.println(entry.getKey() + " " + entry.getValue());
}
}