算法-206. 反转链表

Posted 且听真言

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法-206. 反转链表相关的知识,希望对你有一定的参考价值。

206. 反转链表 - 力扣(LeetCode)

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

示例 1:

输入:head = [1,2,3,4,5]
输出:[5,4,3,2,1]

示例 2:

输入:head = [1,2]
输出:[2,1]

示例 3:

输入:head = []
输出:[]

提示:

  • 链表中节点的数目范围是 [0, 5000]
  • -5000 <= Node.val <= 5000

class Solution 
    public ListNode reverseList(ListNode head) 
        ListNode pre = null;
        ListNode curr = head;
        while (curr != null) 
            ListNode next = curr.next;
            curr.next = pre;
            pre = curr;
            curr = next;
        
        return pre;
    

解析:

第一步:

第二步:

 

 第三步:

第四步:

 

 第五步:

 ... ...

以上是关于算法-206. 反转链表的主要内容,如果未能解决你的问题,请参考以下文章

算法-206. 反转链表

算法-leetcode-206.反转链表

力扣算法JS LC [203. 移除链表元素] LC [206. 反转链表]

Java算法 每日一题 编号206:反转链表

Java算法 每日一题 编号206:反转链表

Java算法 每日一题 编号206:反转链表