Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*********************************
- Name: Mary Soy
- Date: 11-13-09
- Class: 3333
- Professor: Schweller
- File: huffTree.h
- *********************************/
- #include <iostream>
- #include <fstream>
- using namespace std;
- class huffTree
- {
- public:
- string characters;
- int frequency;
- huffTree* hleft;
- huffTree* hright;
- huffTree();
- huffTree(const huffTree&);
- huffTree(huffTree*);
- huffTree(huffTree*, huffTree*);
- void makeReport(ofstream & out);
- void makeReport2(ofstream & out, string);
- };
- huffTree::huffTree()
- {
- hleft = NULL;
- hright = NULL;
- characters = "";
- frequency = 1;
- }
- huffTree::huffTree(const huffTree &s)
- {
- hleft= s.hleft;
- hright= s.hright;
- characters= s.characters;
- frequency= s.frequency;
- }
- huffTree::huffTree(huffTree* s)
- {
- hleft= s->hleft;
- hright= s->hright;
- characters= s->characters;
- frequency= s->frequency;
- }
- huffTree::huffTree(huffTree* s, huffTree* s1)
- {
- hleft = s;
- hright = s1;
- frequency = s->frequency + s1->frequency;
- }
- void huffTree::makeReport(ofstream & out)
- {
- makeReport2(out,"");
- }
- void huffTree::makeReport2(ofstream & out, string x)
- {
- string z = "0", o = "1";
- if(hleft != NULL)
- {
- hleft->makeReport2(out,z+x);
- hright->makeReport2(out, o+x);
- }
- else
- out<<characters << " " << x << endl;
- }
Add Comment
Please, Sign In to add comment