反转链表
题目描述
输入一个链表,反转链表后,输出新链表的表头。
分析
这个应该是链表相关的经典入门问题,通过当前、前后驱三个节点,每次保存next节点,更新当前节点指向前驱节点。
实现
public ListNode ReverseList(ListNode head) {
if(head == null){
return null;
}
ListNode pre = null;
ListNode next = null;
while(head!=null){
next = head.next;
head.next = pre;
pre = head;
head = next;
}
return pre;
}