leetcode 206. 反转链表
时间复杂度:O(n)
注意的点:
注意特殊的输入(空链表,只有一个元素的链表)
记得删除已有的链接(要不然链表有环)
完整代码
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode reverseList(ListNode head) {
if(head==null||head.next==null)return head;
ListNode ans=reverseList(head.next);
head.next.next=head;
head.next=null;
return ans;
}
}