height of the tree
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
int MyBST::height(Node * node) { if(node== NULL) { return 0; } else { cout << "...on node : " << node->data << endl; //first we get the height of the left int leftHeight = height(node->left); int rightHeight = height(node->right); //which everone is larger gets added? if((node->right) == NULL && (node->left == NULL)) return 0; //if its a leaf, its a 0 else { if(leftHeight > rightHeight) return (leftHeight + 1); else return (rightHeight + 1); } } } |