翻转链表
题目描述
输入一个链表,反转链表后,输出新链表的表头。
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; } }