本文整理汇总了C++中HuffmanTree::generate_code_table方法的典型用法代码示例。如果您正苦于以下问题:C++ HuffmanTree::generate_code_table方法的具体用法?C++ HuffmanTree::generate_code_table怎么用?C++ HuffmanTree::generate_code_table使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HuffmanTree
的用法示例。
在下文中一共展示了HuffmanTree::generate_code_table方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: node
std::unordered_map<char, std::string> HuffmanTree::compress_file(std::string inputFile, std::string outputFile) {
// variables and typedef
typedef HuffmanTree::HuffmanNode node_type;
HuffmanTree tree;
std::unordered_map<char, unsigned int> map;
std::unordered_map<char, std::string> code_table;
std::priority_queue<node_type,std::vector<node_type>, HuffmanTree::Compare> prior_q;
// calling methods
tree.create_map(map,inputFile);
tree.fill_queue(prior_q,map);
HuffmanTree::HuffmanNode node(tree.build_tree(prior_q));
tree.generate_code_table(node,code_table,"");
tree.generate_code_file(outputFile, code_table);
std::string bit_string = tree.generate_bit_string(inputFile,code_table);
tree.generate_binary_compressed_file(outputFile, bit_string);
tree.generate_compressed_file(outputFile, bit_string);
return code_table;
}