Convert Sorted List to Binary Search Tree LeetCode solution in Java
1class Solution {23public TreeNode sortedListToBST(ListNode head) {45ListNode tmp = head;6ArrayList<Integer> treelist = new ArrayList<>();78while (tmp != null) {9treelist.add(tmp.val);10tmp = tmp.next;11}1213return createTree(treelist, 0, treelist.size() - 1);14}1516public TreeNode createTree(ArrayList<Integer> treelist, int start, int end) {1718if (start > end) return null;1920int mid = start + (end - start) / 2;2122TreeNode node = new TreeNode(treelist.get(mid)); // getNode(treelist.get(mid));2324node.left = createTree(treelist, start, mid - 1);25node.right = createTree(treelist, mid + 1, end);26return node;27}28}