反转链表——leetcode24

反转链表

题目:反转链表

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

示例:

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

题解:递归

原链表:1->2->3->4->5

假设3,4,5已经翻转:

则翻转2:  2.next.next=2;   2.next=null;

class Solution {
    public ListNode reverseList(ListNode head) {
        if(head==null||head.next==null) return head;
        ListNode newHead=reverseList(head.next);
        head.next.next=head;
        head.next=null;
        return newHead;
    }
}

 

posted @ 2022-01-19 12:15  言思宁  阅读(20)  评论(0编辑  收藏  举报