[Leetcode] #82#83 Remove Duplicates from Sorted List I & II
来源:互联网 发布:网络电视直播apk下载 编辑:程序博客网 时间:2024/06/06 03:56
Discription:
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
.
Solution:
ListNode* deleteDuplicates(ListNode* head) {if (head == NULL || head->next == NULL) return head;ListNode *curr = head->next, *pre = head;while (curr){if (curr->val == pre->val){ListNode *temp = curr;pre->next = curr->next;curr = curr->next;delete temp;}else{pre = curr;curr = curr->next;}}return head;}
ListNode* deleteDuplicates(ListNode* head) {if (head) {ListNode *p = head;while (p->next) {if (p->val != p->next->val) {p = p->next;}else {ListNode *tmp = p->next;p->next = p->next->next;free(tmp);}}}return head;}
Discription:
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:
ListNode* deleteDuplicates(ListNode* head) { //自己写的if (head == NULL || head->next == NULL) return head;ListNode *curr = head;ListNode *pre = new ListNode(-1);pre->next = head;head = pre;while (curr && curr->next){if (curr->val == curr->next->val){int base = curr->val;curr = curr->next;while (curr && (curr->val == base)){ListNode *tmp2 = curr;curr = curr->next;delete tmp2;}pre->next = curr;}else{curr = curr->next;pre = pre->next;}}return head->next;}
ListNode* deleteDuplicates(ListNode* head) { //比较经典的ListNode* dummy = new ListNode(0);dummy->next = head;ListNode* cur = dummy;int duplicate;while (cur->next && cur->next->next) {if (cur->next->val == cur->next->next->val) {duplicate = cur->next->val;while (cur->next && cur->next->val == duplicate) {cur->next = cur->next->next;}}else {cur = cur->next;}}return dummy->next;}附:Leetcode源代码见我的GitHub
0 0
- leetcode--83&82 Remove Duplicates from sorted list I&II
- [Leetcode] #82#83 Remove Duplicates from Sorted List I & II
- LeetCode 82,83 Remove Duplicates from Sorted List I, II解析
- 【LeetCode】Remove Duplicates from Sorted List I && II
- 【LeetCode】Remove Duplicates from Sorted List I && II
- [Leetcode] Remove Duplicates from Sorted List I | II
- LeetCode Solutions : Remove Duplicates from Sorted List I & II
- 082&083 Remove Duplicates from Sorted List I II [Leetcode]
- Remove Duplicates from Sorted List I II -- leetcode
- LeetCode:Remove Duplicates from Sorted List I & II
- Remove Duplicates from Sorted List I II
- Remove Duplicates from Sorted List I,II
- Remove Duplicates from Sorted List I II
- LeetCode: Remove Duplicates from Sorted List II
- [Leetcode] Remove Duplicates from Sorted List II
- LeetCode: Remove Duplicates from Sorted List II
- [Leetcode] Remove Duplicates from Sorted List II
- [leetcode] Remove Duplicates from Sorted List II
- ds18b20
- 240. Search a 2D Matrix II
- OVS VxLAN Flow 分析
- 241. Different Ways to Add Parentheses
- python中的除法问题
- [Leetcode] #82#83 Remove Duplicates from Sorted List I & II
- 哥德巴赫猜想9位数验证
- 深度优先搜索——单词方阵
- Vue2.x踩坑与总结
- QTREE系列1,4,5,6,7 LCT
- 常用采样方法
- 函数的递归 与 函数的设计技巧
- php数组指针
- HDU3065【AC自动机-AC感言】