public static ListNode mergeKListsRecursive(List<ListNode> lists) {//AC
        if (lists == null) return null;
        else if (lists.size() == 0) return null;
        else if (lists.size() == 1) return lists.get(0);
        else {
        	return mergeKLists2(lists, 0, lists.size()-1);
        }
    }