Leetcode206.反转链表

206.反转链表

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

  • 题目:206. 反转链表 - 力扣(LeetCode) (leetcode-cn.com)
  • 思路:首先,使用递归实现链表除头节点外的所有节点的反转;最后,单独处理头节点的反转。

class Solution {
    public ListNode reverseList(ListNode head) {
        //此处的是递归的关键之处,将整个链表实现反转除了头节点    
        if(head==null||head.next==null){
            return head;
        }
        ListNode last = reverseList(head.next);
        //处理头节点的反转
        head.next.next = head;
        head.next = null;
        return last;
    }
}

你可能感兴趣的:(leetcode算法题解答,leetcode,算法,java)