0
希望の結果を説明するのは難しいですが、私がここで具体的に行っていたのは、あなたが典型的なツリーの出力を左に90度回転させた場合のものです。あなたは非常によくハフマン木に似ていないこと、見ることができるようにコンソールにハフマンツリーを表示するにはどうしたらいいですか?
(e)
(s)
(o)
(w)
(l)
(n)
(t)
(h)
(k)
()
(a)
:
printTree(tree, "\t", 0);
private static void printTree(HTree tree, String space, int height) {
assert tree != null;
if (tree instanceof HLeaf) {
HLeaf leaf = (HLeaf)tree;
for (int k = 0; k < height; k++)
System.out.print(space);
System.out.println("(" + leaf.value + ")");
}
else if (tree instanceof HNode) {
HNode node = (HNode)tree;
// traverse left
printTree(node.left, space, height++);
// traverse right
printTree(node.right, space, height++);
}
}
出力は次のようになります。