反转链表——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;
}
}