首页 > 代码库 > [leetcode]Remove Duplicates from Sorted List

[leetcode]Remove Duplicates from Sorted List

 

 

Remove Duplicates from Sorted List

Given a sorted linked list, delete all duplicates such that each element appear only once.

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

 算法思路:

单次遍历,遇到后驱与自己一样,删掉,时间复杂度O(n),空间O(1)。

 1 public class Solution { 2     public ListNode deleteDuplicates(ListNode head) { 3         if(head == null || head.next == null) return head; 4         ListNode tail = head; 5         while(tail.next != null){ 6             if(tail.next.val == tail.val){ 7                 tail.next = tail.next.next; 8             }else{ 9                 tail = tail.next;10             }11         }12         return head;13     }14 }