Binary Search Tree : Insertion

  • + 0 comments

    Java:

    public static Node insert(Node root,int data) {
        Node n = new Node(data);
        Node head = root;
        if (root == null) {
            root = n;
        }
        while (head != null) {
            if (data < head.data && head.left == null) {
                head.left = n;
                break;
            } else if (data < head.data && head.left != null) {
                head = head.left;
            } else if (data >= head.data && head.right != null) {
                head = head.right;
            } else if (data >= head.data && head.right == null) {
                head.right = n;
                break;
            }
        }
        return root;
    }