zoukankan      html  css  js  c++  java
  • Remove Duplicates from Sorted List II 解答

    Question

    Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.

    For example,
    Given 1->2->3->3->4->4->5, return 1->2->5.
    Given 1->1->1->2->3, return 2->3.

    Solution

    Note here we need to consider head of the list. For example, for input 1 -> 1, we need to return null.

     1 /**
     2  * Definition for singly-linked list.
     3  * public class ListNode {
     4  *     int val;
     5  *     ListNode next;
     6  *     ListNode(int x) { val = x; }
     7  * }
     8  */
     9 public class Solution {
    10     public ListNode deleteDuplicates(ListNode head) {
    11         if (head == null || head.next == null)
    12             return head;
    13         while (head.next != null && head.val == head.next.val) {
    14             while (head.next != null && head.val == head.next.val)
    15                 head = head.next;
    16             if (head.next != null)
    17                 head = head.next;
    18             else
    19                 return null;
    20         }
    21         ListNode current = head, next1, next2;
    22         while (current != null && current.next != null && current.next.next != null) {
    23             next1 = current.next;
    24             next2 = current.next.next;
    25             if (next1.val != next2.val) {
    26                 current = current.next;
    27             } else {
    28                 while (next2 != null && next1.val == next2.val)
    29                     next2 = next2.next;
    30                 current.next = next2;
    31             }
    32         }
    33         return head;
    34     }
    35 }
  • 相关阅读:
    Oracle Golden Gate
    DNS
    RMAN 管理
    黄伟-RAC生产库现场调整本分策略实战
    Linux下RAID技术
    OCP之黄伟 2
    About NULL Value
    OCP之黄伟
    Table
    Perl的简单变量
  • 原文地址:https://www.cnblogs.com/ireneyanglan/p/4814867.html
Copyright © 2011-2022 走看看