本文共 1804 字,大约阅读时间需要 6 分钟。
Easy
65772FavoriteShare
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
C++:
/* @Date : 2019-02-19 22:19:29 @Author : 酸饺子 (changzheng300@foxmail.com) @Link : https://github.com/SourDumplings @Version : $Id$*//*https://leetcode.com/problems/remove-duplicates-from-sorted-list/ *//** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution{public: ListNode* deleteDuplicates(ListNode* head) { if (head == NULL) { return head; } ListNode *f = head, *b = head->next; while (b != NULL) { if (f->val == b->val) { ListNode *temp = b; f->next = b->next; delete temp; } else f = b; b = f->next; } return head; }};
Java:
/** * @Date : 2019-02-19 22:26:44 * @Author : 酸饺子 (changzheng300@foxmail.com) * @Link : https://github.com/SourDumplings * @Version : $Id$ * * https://leetcode.com/problems/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 (head == null) { return head; } ListNode f = head, b = head.next; while (b != null) { if (f.val == b.val) { f.next = b.next; } else f = b; b = f.next; } return head; }}
转载地址:http://qfrpi.baihongyu.com/