反转链表

Posted xxc-blog

tags:

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

题目描述

输入一个链表,反转链表后,输出新链表的表头。

题目详解

递归,先顺序递归到倒数第二个节点。然后以此回归,并设置head.next = null。保证首节点反转变成最后一个节点后的下一个节点为null。

/*
public class ListNode {
    int val;
    ListNode next = null;

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
    public ListNode ReverseList(ListNode head) {
       if (head == null || head.next == null){
            return head;
        }
        ListNode temp = head.next;
        ListNode newlist = ReverseList(temp);
        temp.next = head;
        head.next = null;
        return newlist;
    }
}

  

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

如何链表反转

反转链表

c语言,链表的反转,请写出代码,并讲解下,谢了!!!!!

代码的鲁棒性:反转链表

Offer[24] 反转链表

初级--04---链表反转----链表实现栈队列双端队列