Home

Tree Top View

Detailed explanation coming soon!

/*
import java.util.*;

public class Solution {
    public static void main(String[] args){
        Node root = new Node(3);
        root.left = new Node(5);
        root.left.left = new Node(1);
        root.left.right = new Node(4);
        root.left.left.right = new Node(9);
        root.right = new Node(2);
        root.right.left = new Node(6);
        root.right.right = new Node(7);
        root.right.right.left = new Node(8);

        top_view(root);
    }

*/

    public static void top_view(Node node){
        if(node == null) return;

        printLeftTopView(node.left);
        System.out.print(node.data + " ");
        printRightTopView(node.right);

        System.out.println("");
    }

    public static void printLeftTopView(Node node){
        if(node == null) return;
        printLeftTopView(node.left);
        System.out.print(node.data + " ");
    }

    public static void printRightTopView(Node node){
        if(node == null) return;
        System.out.print(node.data + " ");
        printRightTopView(node.right);
    }

/*

    public static class Node {
        public int data;
        public Node left, right;

        public Node(int data){
            this.data = data;
            this.left = null;
            this.right = null;
        }
    }
}
*/


Questions? Have a neat solution? Comment below!