Skip to content

Instantly share code, notes, and snippets.

@IgnoredAmbience
Created February 20, 2011 17:38
Show Gist options
  • Save IgnoredAmbience/836139 to your computer and use it in GitHub Desktop.
Save IgnoredAmbience/836139 to your computer and use it in GitHub Desktop.
RBST dumpStructure
void RBST::dumpStructure() {
dumpStructure(m_head, 0);
cout << endl;
}
void RBST::dumpStructure(RBSTNode* target, int d) {
cout << endl;
for (int i = 0; i < d; i++) {
cout << ' ';
}
if(target == NULL) { cout << '-'; return; }
cout << *target << target->getSize() << "(";
dumpStructure(target->left(), d+1);
cout << ",";
dumpStructure(target->right(), d+1);
cout << ")";
}
*int main(int argc, char **argv) {
RBST* r = new RBST();
for (char c = 'a'; c <= 'z'; c++) {
r->add(Key(&c));
}
r->dump();
r->dumpStructure();
r->del(Key("b"));
r->dump();
r->dumpStructure();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment