题目描述:给你一个链表,反转它,并返回头节点
思路:设置一个current来保存当前节点,开始为head。设置一个pre来保存current前一个节点,好让current反转链接,设置一个res记录结果,res=pre,设置一个tmp来记录current的后一个节点,这样的话可以让current反转之后好移动。
java程序:
public class Solution {
public ListNode ReverseList(ListNode head) {if(head==null)
return null;
ListNode res = null;
ListNode pre = null;
ListNode current = head;
ListNode tmp = null;
while(current!=null){
tmp = current.next; //current的后一个节点
current.next = pre; //反转链接
pre = current;
current = tmp;
res = pre;
}
return res;
}
}