83. Remove Duplicates from Sorted List

Given a sorted linked list, delete all duplicates such that each element appear only once.
Example 1:
Input: 1->1->2
Output: 1->2

Example 2:
Input: 1->1->2->3->3
Output: 1->2->3

难度:easy
题目:给定有序列表,删除所有重复的元素只允许其出现一次。
Runtime: 1 ms, faster than 29.69% of Java online submissions for Remove Duplicates from Sorted List.Memory Usage: 27.4 MB, less than 6.14% of Java online submissions for Remove Duplicates from Sorted List.
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode deleteDuplicates(ListNode head) {
if (null == head || null == head.next) {
return head;
}

ListNode ptr = head;
while (ptr.next != null) {
if (ptr.val == ptr.next.val) {
ptr.next = ptr.next.next;
} else {
ptr = ptr.next;
}
}

return head;
}
}

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理