Leetcode 删除重复的链表元素
来源:互联网 发布:手机怎样看淘宝的积分 编辑:程序博客网 时间:2024/05/01 16:04
给定一个链表,其中可能包含重复的元素,比如1->2->2->3->4
第一题:删除多余的重复的元素: 也就是得到1->2->3->4
第二题:删除所有的重复的元素:1->3->4
第一题:
第二题:感觉第二个比较有趣,要考虑的情况也多一点,关键是找到distinct value,并且加入到新的链表中去
第一题:删除多余的重复的元素: 也就是得到1->2->3->4
第二题:删除所有的重复的元素:1->3->4
结构体和函数声明如下:
typedef struct Node {int val;ListNode * next;} *ListNode ListNode * removeDuplicates(ListNode * head)
第一题:
{ if(head == NULL) return NULL; ListNode * cur1 = head; ListNode * cur2 = head; while(cur2 != NULL) { int val = cur1->val; while(cur2 && cur2->val == cur1->val) { cur2 = cur2 ->next; } cur1->next = cur2; cur1 = cur1->next; } return head;}
第二题:
{ ListNode *pre = head, *cur = head,*dummy,*tail; dummy = new ListNode(); tail = dummy; while(cur != NULL && cur->next != NULL) { //如果遇到相等的元素,就不断的向后移动 while(cur->next != NULL && cur->val == cur->next->val) cur = cur->next; // distinct value,加入到新的链表中去 if(pre == cur) { tail->next = pre; tail = tail->next; } pre = cur->next; cur = cur->next; } tail -> next = cur; return dummy->next;}
- Leetcode 删除重复的链表元素
- 删除链表中的重复的元素
- 有序链表的重复元素删除
- 链表所有重复元素的删除
- leetcode 删除有序链表中的重复元素
- <LeetCode> 题112:删除排序链表中的重复元素
- [LeetCode]83. Remove Duplicates from Sorted List(删除有序链表的重复元素 )
- 链表删除重复元素
- 重复元素的删除
- 重复元素的删除
- LeetCode 从排序好的列表中删除重复元素
- 删除环状单向链表中的重复元素的操作
- 删除一个有序链表的重复元素
- 链表之单链表重复元素的删除
- Java实现-删除排序链表的重复元素1
- 2.1 链表重复元素(删除)
- 有序链表删除重复元素
- 删除排序链表中的重复元素
- poj1742andHDOJ2844(DP多重背包)
- poj1276(DP多重背包)
- 真语
- poj1083
- 屌丝程序员日常工作中的一些问题
- Leetcode 删除重复的链表元素
- poj1157
- hdoj动态规划题集(转载)
- uva10130解题报告
- (未完全)uva624
- 省赛就来了?
- 聪哥来啦!
- java 内部类
- 无语