public void printTreePreOrder(Node head){
        if(head == null){
            return;
        }
        System.out.println(head.data);
        printTreePreOrder(head.before);
        printTreePreOrder(head.next);
    }
http://www.geeksforgeeks.org/sorted-linked-list-to-balanced-bst/
Test cases
empty list
0 1 or more node lists
src/com/interview/linklist/SortedLLToBalancedBST.java