1 2 3 4 5 -1 6 -1 -1 -1 -1 -1 -1

How to take input in python to build binary tree using these given numbers.

hello @mehul.ai

You can maintain a queue of nodes, push the root node inside the queue, then pop the node, but before popping, you need to push its children to the queue… You can follow the approach as :

node *buildtree() //build tree function to build tree level wise
{
int d;
cin>>d;
queue<node *>q;
node  <em>root=new node(d);
q.push(root);
int c1,c2;
while(!q.empty())
{
node</em>  f=q.front();
q.pop();
cin>>c1>>c2;
if(c1!=-1)
{
f->left=new node(c1);
q.push(f->left);
}
if(c2!=-1)
{
f->right=new node(c2);
q.push(f->right);
}
}
return root;
}

in case of python u can read all elements at once in a list.
and then use index to build node and increment it by 1.

I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.

On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.