输入一个链表,反转链表后,输出新链表的表头。
示例1
输入
{1,2,3}
返回值
{3,2,1}
解答:
public class Solution {
public ListNode ReverseList(ListNode head){
if(head == null) {
return null;
}
ListNode pre = null;
ListNode cur = head;
ListNode temp;
while(cur != null){
//记录后各一个节点的地址,防止丢失
temp = cur.next;
//改变指针指向
cur.next = pre;
//向后移动
pre = cur;
cur = temp;
}
return pre;
}
}