/* public class ListNode { int val; ListNode next = null;

ListNode(int val) {
    this.val = val;
}

}*/ public class Solution {

ListNode result = null;

public ListNode ReverseList(ListNode head) {
    if(head == null){
        return null;
    }
    reverse(head);
    return result;
}

public ListNode reverse(ListNode node){
    if(node.next == null){
        result = node;
        return node;
    }
    ListNode pre = reverse(node.next);
    pre.next = node;
    node.next =null;
    return node;
}

}