Day18: (Binary Tree)
Level order Traversal Solved on: Aug 1st 2020
int height (Node *node) {
int lh, rh;
if (node==NULL) {
return 0;
}
lh=height(node->left);
rh= height(node->right);
if (lh>rh){
return lh+1;
} else {
return rh+1;
}
}
/* Print nodes at a given level */
void printGivenLevel(Node* root, int level, vector<int> &v) {
if (root == NULL)
return;
if (level == 1)
v.push_back(root->data);
else if (level > 1)
{
printGivenLevel(root->left, level-1, v);
printGivenLevel(root->right, level-1, v);
}
}
vector<int> levelOrder(Node* node) {
vector<int> v;
if (node == NULL) {
return v;
}
int h=height(node);
int i;
for (i=0;i<=h;i++) {
printGivenLevel(node, i, v);
}
return v;
}Height of a Binary Tree Solved on: Aug 1st 2020
Diameter of Binary Tree Solved on: Aug 1st 2020
Check if Binary tree is height balanced or not Solved on: Aug 2nd 2020
Lowest Common Ancestor of a Binary Tree Solved on: Aug 2nd 2020
Check if two trees are identical or not Solved on: Aug 2nd 2020
Last updated
Was this helpful?