turn a ->Frequency> b ->Frequency; } class HuffmanCode { public : vector < Node *>Show; // 显示结果的向量// 输入文件绝对路径华北电力大学实验报告第页共页 HuffmanCode( char *file); ~HuffmanCode(); void Executing(); private : char *FilePath; Node *Root; // 哈夫曼树根节点 vector < Node *>AsQueue; // 作为队列的向量// 读取文件内容, 扫描字符出现频率,形成初始队列 void ReadAndScan(); // 生成哈夫曼树 void CreateHuffmanTree(); // 设置编码 void ErgodicTree(); // 释放节点 void Delete( Node *n); }; HuffmanCode ::HuffmanCode( char * file ) { FilePath= file ;} HuffmanCode ::~HuffmanCode() { // 释放节点 Delete(Root); } void HuffmanCode ::Executing(){ // 读取文件内容, 扫描字符出现频率,形成初始队列 ReadAndScan(); // 生成哈夫曼树 CreateHuffmanTree(); // 遍历整棵树并设置编码 ErgodicTree(); } // 读取文件内容, 扫描字符出现频率,形成初始队列 void HuffmanCode ::ReadAndScan(){ ifstream fin; fin.open( "E:\\h.dat" , ios ::binary); string str; fin>>str;