思想:定义一个变量为前驱,记录每一个的前驱,用于反转链表。当遍历到最后一个结点时,找到了新的头结点,于是返回头结点的值。
代码:
public Node reverList(){
Node cur = this.head;
Node rever = null; //新链表的头结点
Node prev = null; //前驱
while(cur != null){ //判断链表是否为空
Node curNext = cur.next;
if(curNext == null){
rever = cur;
}
cur.next = prev;
prev = cur;
cur = curNext;
}
return rever;
}