Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 5

import java.util.

*;

public class BinaryTree {

private BTNode root;

public BinaryTree()

root =null;

public BTNode getRoot() {

return root;

public void setRoot(BTNode root) {

this.root = root;

public BTNode createNode(int d)

if(root == null)

{
root =new BTNode(d);

return root;

BTNode new_node = new BTNode(d);

return new_node;

public void insert_levelwise(int d)

BTNode new_node = new BTNode(d);

BTNode iter;

Queue<BTNode> q= new LinkedList<BTNode>();

if(root == null)

root = new_node;

return;

q.add(root);

while(!q.isEmpty())

iter = q.remove();

if(iter.getLeft() == null)

{
iter.setLeft(new_node);

else

q.add(iter.getLeft());

if(iter.getRight() == null)

iter.setRight(new_node);

else

q.add(iter.getRight());

public void levelwise_traverse ()

BTNode iter;

Queue<BTNode> q= new LinkedList<BTNode>();

if(root == null)

System.out.println("tree empty");

return;

q.add(root);
while(!q.isEmpty())

iter = q.remove();

System.out.println(iter.getData()+" ");

if(iter.getLeft() != null)

q.add(iter.getLeft());

if(iter.getRight() != null)

q.add(iter.getRight());

public static void main(String[] args) {

// TODO Auto-generated method stub

int i,num;

BinaryTree bt = new BinaryTree();

/*

bt.setRoot(bt.createNode(10));
bt.getRoot().setLeft(bt.createNode(20));

bt.getRoot().getLeft().setRight(bt.createNode(30));

*/

Scanner sc=new Scanner(System.in);

for(i=1 ; i<=12 ; i++)

System.out.println(" enter number ");

num=sc.nextInt();

bt.insert_levelwise(num);

bt.levelwise_traverse();

You might also like