题目描述
输入一个链表,反转链表后,输出新链表的表头。

public class Solution {
    public ListNode ReverseList(ListNode h1) {
//h0节点是h1节点的前一个节点,h2是h1的下一个节点,hReversHead是最终的头结点
//通过h1的后移,改变链表结构,同时为了防止链表断裂知道了h1的next节点
        ListNode h0 = null;
        ListNode hReverseHead = null;
        ListNode h2 = null;
        while(h1!=null){
           h2 = h1.next;
           if(h2 == null){
               hReverseHead = h1;
           }
           h1.next = h0;
           h0 = h1;
           h1 = h2;
        }
        return hReverseHead;

    }
}