import java.util.HashMap; import java.util.Map; public class Aufgaben { public static void buchstabenZählen(String text) { var häufigkeiten = Zählen.countEachLetter(text); Zählen.printZahl(häufigkeiten); } public static void binärbaum(String text) { Map zahlen = Zählen.countEachLetter(text); Node wurzel = Node.erstellen(zahlen); HashMap codes = new HashMap(); if(wurzel.getLeft() == null && wurzel.getRight() == null) { codes.put(wurzel.getBuchstabe(), "0"); } else { Komprimierung.generieren(codes,wurzel,""); } for (var entry : codes.entrySet()) { System.out.println("Buchstabe: " + entry.getKey() + ", Code: " + entry.getValue()); } } public static void huffmanCodierun (String text) { Map zahlen = Zählen.countEachLetter(text); Node wurzel = Node.erstellen(zahlen); System.out.println("Huffman-Codierung: " + Komprimierung.codierung(text,wurzel)); } public static void decodierung (String text) { System.out.println("Kodierter Text: " + Komprimierung.codierungInklBaum(text)); //soviele Zeichen aufgrund von UTF-16 System.out.println("Decodierter Text: " + Komprimierung.decodierungInlkBaum(Komprimierung.codierungInklBaum(text))); } public static void dateinKomprimierung (String source, String target) { Komprimierung.compressFile(source,target); } public static void dateinLesen (String file) { Komprimierung.readFile(file); } }