leetcode剑指 Offer 24(反转链表)–Java语言实现

leetcode剑指 Offer 24(反转链表)--Java语言实现

定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。

 

示例:

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

限制:

0 <= 节点个数 <= 5000

 

注意:本题与主站 206 题相同:https://leetcode-cn.com/problems/reverse-linked-list/

 

题目链接: https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/

 

解:

1、递归

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

2、双指针

 

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » leetcode剑指 Offer 24(反转链表)–Java语言实现