4
我想要做一個huffman樹的編碼。我的樹是正確的。我只需要弄清楚如何修復我的遞歸函數以正確創建表格。感謝任何幫助,我可以收到。霍夫曼代碼編碼遍歷
struct Code
{
char letter;
string code;
};
void createCode(BTree<Data>* root,string codeStr,vector<Code> &table)
{
if (root->getRightChild() == NULL && root->getLeftChild() == NULL)
{
Code code;
code.letter = root->getData().getLetter();
code.code = codeStr;
table.push_back(code);
}
else
{
createCode(root->getLeftChild(), codeStr.append("1"),table);
createCode(root->getRightChild(), codeStr.append("0"),table);
}
}
哇!謝謝。我不敢相信這很簡單。有用 – user1266174 2012-03-13 10:46:56