一:题目描述
输入一个链表,反转链表后,输出新链表的表头。
二:问题分析
使用额外的初始值为null的指针pre和开始指向头部的指针prepre。然后使用类似于值交换的思路,进行节点交换。
三:问题求解
public class Solution {
public ListNode ReverseList(ListNode head) {
ListNode prepre=null;
ListNode pre=head;
while(pre!=null){
ListNode temp=pre.next;
pre.next=prepre;
prepre=pre;
pre=temp;
}
return prepre;
}
}