当前位置:网站首页>Leetcode82. 删除排序链表中的重复元素 II

Leetcode82. 删除排序链表中的重复元素 II

2022-08-09 23:32:00 Java全栈研发大联盟

题目传送地址:https://leetcode.cn/problems/remove-duplicates-from-sorted-list-ii/

运行效率
在这里插入图片描述
代码如下:

//递归解法
class Solution {
    
      public static ListNode deleteDuplicates(ListNode head) {
    
        //处理边界情况
        if (head == null || head.next == null) {
    
            return head;
        }
        int nextVal = head.next.val;
        ListNode listNode = deleteDuplicates(head.next);
        //处理特殊情况
        if(listNode==null){
    
        //比如head=[3,3,3]这种情况
              if(nextVal== head.val){
    
                return null;
            }
            //比如head={1,2,2}
            head.next=null;
            return head;
        }
        //比如这种情况[1,1,1,2,3] head.val=1 head.next=[1,1,2,3] , 这个时候返回的listNode=[2,3]
        if (head.val == nextVal && listNode.val != nextVal) {
    
            return listNode;
        }
        if (head.val == listNode.val) {
    
            return listNode.next;
        } else {
    
            head.next = listNode;
            return head;
        }
    }

}
原网站

版权声明
本文为[Java全栈研发大联盟]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_40241957/article/details/126250599