您的位置:首页 > 其它

LeetCode206反转链表

2019-03-03 12:26 399 查看

反转链表

反转一个单链表。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
进阶:
你可以迭代或递归地反转链表。你能否用两种方法解决这道题?

分析
这道题最直接的办法就是设三个指针,然后分别反转指针位置,用这个方法的好处就在于可以很好的理解链表的结构。

>


代码

class Solution {
    public ListNode reverseList(ListNode head) {
        if( head == null) return null;
        ListNode pre = null;
        ListNode cur = head;
        ListNode lat = head.next;
        while(lat != null){
            cur.next = pre;
            pre = cur;
            cur = lat;
            lat = lat.next;
        }
        cur.next = pre;
        return cur;
    }
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: