Not able to get how to take input for the tree. Here’s my code-
import java.util.*;
public class Main {
public static void main(String args[]) {
}
}
class BT {
private class Node {
int data;
Node left;
Node right;
}
private Node root;
public void buildTree() {
Queue<Node> queue = new LinkedList<>();
queue.add(this.root);
while(!queue.isEmpty()) {
Node rv = queue.removeFirst();
System.out.print(rv.data + " ");
if(rv.left == -1) {
return null;
} else {
queue.add(rv.left);
}
if(rv.right == -1) {
return null;
} else {
queue.add(rv.right);
}
}
}
int max_level = 0;
public void leftView() {
leftView(this.root, 1);
}
private void leftView(Node node, int level) {
if(max_level < level) {
System.out.print(node.data + "");
max_level = level;
}
leftView(node.left, level+1);
leftView(node.right, level+1);
}
}