【发布时间】:2015-04-17 20:17:49
【问题描述】:
我需要对霍夫曼树进行字符串表示。 它使用前序遍历,输出将使用'I'(用于内部节点)和'L'(用于叶节点)生成一个字符串,后跟叶节点字符。
public static String getTreeString(final BinaryNodeInterface<Character> root)
{
String treeString="";
if(root == null)
return "";
if(root.isLeaf())
treeString = treeString + "L" + root.getData();
else
{
treeString = treeString + "I";
getTreeString(root.getLeftChild());
getTreeString(root.getRightChild());
}
return treeString;
}
当我调试程序时,它会通过并创建正确的字符串,但由于方法开头的String treeString=""; 而无法保存。
所需输出:IIILaILbILcLdLe
我的输出:I
另外,我不允许使用任何全局/实例变量或任何 Java 预定义类。
【问题讨论】:
标签: java recursion tree huffman-code