Tree Easy Level Solution (DSA Sheet by Arsh)
Tree Easy Level Solution (DSA Sheet by Arsh)
Code:
Output: 3
int diameter=0;
height(root,diameter);
return diameter;
}
SHIVANI PATEL 1
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
}
2. Easy Level: Invert Binary Tree.
Code:
Output: [4,7,2,9,6,3,1]
SHIVANI PATEL 2
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: true
}
bool isSubtree(TreeNode* root, TreeNode* subRoot) {
if(!root)
return false;
if(root->val==subRoot->val)
{
if(dfs(root,subRoot))
return true;
}
return isSubtree(root->left,subRoot)||isSubtree(root-
>right,subRoot);
}
4. Easy Level: Range Sum of BST.
Code:
SHIVANI PATEL 3
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: 32
SHIVANI PATEL 4
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: true
return dfs(root->left,root->right);
}
6. Easy Level: Convert Sorted Array to Binary Search Tree.
Code:
SHIVANI PATEL 5
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: [0,-3,9,-10,null,5]
return binaryST(0,nums.size()-1,nums);
}
7. Easy Level: Merge Two Binary Trees.
Code:
SHIVANI PATEL 6
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: [0,-3,9,-10,null,5]
if(root1==NULL )
return root2;
if(root2==NULL)
return root1;
root1->val=root1->val+root2->val;
root1->left=mergeTrees(root1->left,root2->left);
root1->right=mergeTrees(root1->right,root2->right);
return root1;
}
8. Easy Level: Maximum Depth of Binary Tree.
Code:
SHIVANI PATEL 7
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: [3,4,5,5,4,null,7]
if(root==NULL)
return 0;
return max(maxDepth(root->left),maxDepth(root->right))+1;
}
9. Easy Level: Same Tree.
Code:
Output: 3
SHIVANI PATEL 8
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
return false;
if(p->val!=q->val)
return false;
return isSameTree(p->right,q->right) and isSameTree(p->left,q-
>left);
}
10. Easy Level: Lowest Common Ancestor of a Binary Search Tree.
Code:
Output: ["1->2->5","1->3"]
SHIVANI PATEL 9
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
if(left==NULL)
return right;
if(right==NULL)
return left;
else
return root;
}
11. Easy Level: Path Sum.
Code:
Output: true
SHIVANI PATEL 10
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: 6
}
int getMinimumDifference(TreeNode* root) {
if(root==NULL)
return 0;
dfs(root);
return diff;
}
13. Easy Level: Sum of Left Leaves.
Code:
SHIVANI PATEL 11
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: 24
Explanation: There are two left leaves in the binary tree, with values 9
and 15 respectively.
SHIVANI PATEL 12
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
q.push(node->left);
if(node->right)
q.push(node->right);
}
return sum;
}
14. Easy Level: Balanced Binary Tree.
Code:
Output: true
return height(root)!=-1;
SHIVANI PATEL 13
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
if(abs(leftHeight - rightHeight)>1)
return -1;
return max(leftHeight,rightHeight)+1;
}
15. Easy Level: Predecessor and Successor.
Code:
Input:
2
6
50 30 L 30 20 L 30 40 R 50 70 R 70 60 L 70 80 R
65
6
50 30 L 30 20 L 30 40 R 50 70 R 70 60 L 70 80 R
100
Output:
60 70
80 -1
SHIVANI PATEL 14
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
if(root->key>=key)
{
root=root->left;
}
else if(root->key<key)
{
pred=root;
root=root->right;
}
}
}
void findPreSuc(Node* root, Node*& pre, Node*& suc, int key)
{
inorder_successor(root,suc,key);
inorder_predecessor(root,pre,key);
Output: [1,3,2]
SHIVANI PATEL 15
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
Output: [1,3,2]
}
vector<int> inorderTraversal(TreeNode* root) {
vector<int>v;
tree(root,v);
return v;
}
17. Easy Level: Check whether BST contains Dead End.
Code:
int c=0;
bool fun(Node* root,int lb,int ub)
{
if(root==0&& abs(lb-ub)==1)
return 1;
if(root==0)
return 0;
bool l=fun(root->left,lb,root->data);
bool r=fun(root->right,root->data,ub);
if(l&&r)
c=1;
return 0;
}
bool isDeadEnd(Node *root)
{
//Your code here
c=0;
fun(root,0,INT_MAX);
SHIVANI PATEL 16
DSA Solution Of DSA Sheet By Arsh
Solution Of Tree Easy Level Problem
shivani patel
return c;
}
SHIVANI PATEL 17