Leetcode206 翻转链表

时间:2021-03-16 13:47:10   收藏:0   阅读:0

Leetcode206 翻转链表

1、需求

反转一个单链表。

示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL

2、解题思路

使用三个指针,pre指向翻转以后的头结点, curr指向为未转列表的头结点, next指向curr的下一个节点

三个节点不停地向后移动,反转节点

3、java代码

public ListNode reverseList(ListNode head) {

        if(head == null){
            return null;
        }

        ListNode pre = null, curr = head, next = curr.next;

        while(curr != null ){

            curr.next = pre;
            pre = curr;
            curr = next;
            if (next != null) {
                next = next.next;
            }
        }
        return pre;
    }
评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!