/*
public class ListNode {
int val;
ListNode next = null;
ListNode(int val) {
this.val = val;
}
}*/
public class Solution {
public ListNode ReverseList(ListNode head) {
if(head==null){
return null;
}
ListNode pre=null;//上一节点从尾部开始往前走
ListNode cur=head;//当前结点从头部开始往后走
while(cur!=null){
ListNode temp=cur.next;//保存下一结点,断开连接
cur.next=pre;//使当前结点的下一指向上一结点,实现反转
pre=cur;//更新上一结点位置
cur=temp;//更新当前结点位置
}
return pre;//最终返回上一节点,既头结点
}
}