Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Problem Statement: https://leetcode.com/problems/count-complete-tree-nodes/
- */
- class Solution {
- public:
- int countNodes(TreeNode* root) {
- if (!root)
- return 0;
- int l_cnt, r_cnt;
- TreeNode *l_node, *r_node;
- l_cnt = r_cnt = 0;
- l_node = r_node = root;
- while (l_node) {
- l_cnt++;
- l_node = l_node->left;
- }
- while (r_node) {
- r_cnt++;
- r_node = r_node->right;
- }
- if (l_cnt == r_cnt)
- return (1 << l_cnt) - 1;
- return 1 + countNodes(root->left) + countNodes(root->right);
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement