206. Reverse Linked List

2018-04-23  本文已影响0人  liuhaohaohao

Reverse a singly linked list.

画图即可,创建两个指针,一个pivot指向头节点,可用于判断是否反转到最后一个,用pivot.next == null判断结束;第二个front用于引用当前pivot所处位置的后一个节点。用pivot指向其next的next,front指向当前头节点,再将头节点指向front节点。

class Solution {
    public ListNode reverseList(ListNode head) {
        
        ListNode pivot = head;
        ListNode front = null;
        while (pivot != null && pivot.next != null){
            front = pivot.next;
            pivot.next = pivot.next.next;
            front.next = head;
            head = front;
        }
            
        return head;
        
    }
}
上一篇 下一篇

猜你喜欢

热点阅读