top button
Flag Notify
    Connect to us
      Facebook Login
      Site Registration Why to Join

Facebook Login
Site Registration

Find the subtraction of sum of nodes on even level and odd level.

+3 votes
129 views
               40

       30              60

   25      35      50      70

 12  27  32

Answer = -59

posted Oct 22, 2013 by Anuj Yadav

Share this question
Facebook Share Button Twitter Share Button Google+ Share Button LinkedIn Share Button Multiple Social Share Button

1 Answer

+1 vote
void sumlevel(node *root, int *esum, int *osum, int h)
{
    if (root == NULL)
        return 0;
    else
    {
        if(h %2 == 0)
            *esum = *esum + root->val;
        else
            *osum = *osum + root->val;
        sumlevel(root->left, esum, osum, h+1);
        sumlevel(root->right, esum, osum, h+1);
    }
}
int diff_of_level(node *root)
{
    int esum = 0, osum = 0;
    int h;
    sumlevel(root, &esum, &osum, 1);
    return esum - osum;
}
answer Oct 22, 2013 by Vikas Upadhyay
Similar Questions
+7 votes

A binary tree is given and two nodes of this tree is given, we have to find out the algorithm/code for lowest common ancestor of the two given nodes. Common ancestor are the nodes which can be reached from two nodes by following the parent links. Lowest common ancestor is the common ancestor which has the highest depth.

+5 votes
      40
      /\
     20 60
     /\  \
   10 30  80
      /   /\
     25  70 90
           \
           75

longest path 
25 30 20 40 60 80 70 75 
Answer
    25 ----> 75
+6 votes
The input tree is as shown below
            40
            / \
        20      60
        / \       \
    10      30      80
      \            /  \ 
       15        70    90

Output: 15 30 60 80 90
Contact Us
+91 9880187415
sales@queryhome.net
support@queryhome.net
#280, 3rd floor, 5th Main
6th Sector, HSR Layout
Bangalore-560102
Karnataka INDIA.
QUERY HOME
...