Hackerrank | 30 days of code | Day 23-Solution in c++| BST-Level-Order-Traversal-hackerrank-Solution-in-c++
Day 23 BST Level-Order Traversal Solution in Cpp
#include <iostream> #include <cstddef> #include <queue> #include <string> #include <cstdlib> using namespace std; class Node{ public: int data; Node *left,*right; Node(int d){ data=d; left=right=NULL; } }; class Solution{ public: Node* insert(Node* root, int data){ if(root==NULL){ return new Node(data); } else{ Node* cur; if(data<=root->data){ cur=insert(root->left,data); root->left=cur; } else{ cur=insert(root->right,data); root->right=cur; } return root; } } void levelOrder(Node * root){ queueq; Node *temp = root; while (temp) { cout << temp->data << " "; if (temp->left) { q.push(temp->left); } if (temp->right) { q.push(temp->right); } temp = q.front(); q.pop(); } } };//End of Solution int main(){ Solution myTree; Node* root=NULL; int T,data; cin>>T; while(T-->0){ cin>>data; root= myTree.insert(root,data); } myTree.levelOrder(root); return 0; }
0 Comments