我正在制作一种为霍夫曼树创建代码字的方法。从中获取代码字的节点的符号被传递到该方法中。我不完全肯定如何去做它必须返回一个int []。我编写了我认为可能有用的代码。如何正确使用 int[] 以便创建诸如 00101 之类的输出?谢谢
public int[] codeWordAsAry(int k) {
HuffTreeNode temp;
int[] codeWord;
int pos = 0;
temp = leaves[k];
while (temp.parentOf() != null){
if (temp.isLeftChild()){
codeWord[pos] = 1;
pos++;
}
else { //if isRightChild
codeWord[pos] = 0;
pos++;
}
}
return codeWord; }
好的,所以我了解初始化大小,但现在我只是想知道它是否可以使用这种方式打印出沿 01011 行或其他组合的内容,例如我在 int[] 数组中正确地增加位置的方式. 那会打印出我要找的东西吗?