정렬 된 링크 목록을 감안할 때, 단지 떠나, 중복 번호를 모든 노드를 삭제 별개의 원본 목록에서 번호를.
예 1 :
입력 : 1-> 2-> 3-> 3-> 4 -> 4 -> 5 출력 : 1-> 2-> 5
예 2 :
입력 : 1-> 1> 1-> 2-> 3 출력 : 2-> 3
/ ** * 단독으로 링크 된 목록에 대한 정의. * 공공 클래스 ListNode { * INT의 발; * ListNode 다음; * ListNode INT (X) {X = 브로; } *} * / 클래스 솔루션 { 공공 ListNode의 deleteDuplicates (ListNode 헤드) { 경우 (머리 == null이 || head.next == null이 ) { 반환 머리; } ListNode 더미 = 새로운 ListNode을 (-1 ); dummy.next = 헤드; ListNode CUR = 거짓; // 다음 두 노드를 확인 하면서 (cur.next! = null의 && cur.next.next! = null의 ) { 경우 (cur.next.val == cur.next.next.val) { INT NUM = cur.next .val; 반면 (cur.next! = null의 && cur.next.val == NUM) { cur.next = cur.next.next; } } 다른 { CUR = cur.next; } } 반환 dummy.next; } }