[LeetCode] Remove Duplicates from Sorted Linked List 从排序链表中去掉重复值
2014-12-08 08:21
603 查看
Given a sorted linked list, delete all duplicates such that each element appear only once. For example, Given
return
return
相关问题1:压缩字符串
相关问题2-1:Remove Duplicates from Sorted Linked List
I
相关问题2-2:[LeetCode] Remove Duplicates from Sorted List II
相关问题3:[LeetCode] Remove Duplicates From Sorted
Array I
相关问题 4:[LeetCode] Remove Duplicates From Sorted
Array II
思路和相关问题3和相关问题4 完全一样:fast-val是和A[j-1] 相当,fast->next->val和A[j]相当。注意,新链表和原来的链表可能有不一样的头指针。
1->1->2,
return
1->2. Given
1->1->2->3->3,
return
1->2->3.
相关问题1:压缩字符串
相关问题2-1:Remove Duplicates from Sorted Linked List
I
相关问题2-2:[LeetCode] Remove Duplicates from Sorted List II
相关问题3:[LeetCode] Remove Duplicates From Sorted
Array I
相关问题 4:[LeetCode] Remove Duplicates From Sorted
Array II
思路和相关问题3和相关问题4 完全一样:fast-val是和A[j-1] 相当,fast->next->val和A[j]相当。注意,新链表和原来的链表可能有不一样的头指针。
ListNode *deleteDuplicates(ListNode *head) { ListNode* newHead=NULL; ListNode* slow = NULL; ListNode* fast = head; if(head==NULL) return NULL; if(head->next==NULL) return head; while(fast->next) { if(fast->val!=fast->next->val) // A[j-1]!=A[j] { if(slow==NULL) newHead = fast; else slow->next = fast; slow = fast; } fast = fast->next; } if(slow==NULL) newHead = fast; else slow->next = fast; slow = fast; fast = fast->next; return newHead; }
相关文章推荐
- [Leetcode] Remove duplicates from sorted list 从已排序的链表中删除重复元素
- LeetCode 83 Remove Duplicates from Sorted List(从已排序链表中移除重复元素)(*)
- 【LeetCode-面试算法经典-Java实现】【083-Remove Duplicates from Sorted List(排序的单链表中删除重复的结点)】
- 【LeetCode-面试算法经典-Java实现】【082-Remove Duplicates from Sorted List II(排序链表中删除重复元素II)】
- [Leetcode] Remove duplicate from sorted list ii 从已排序的链表中删除重复结点
- leetcode(83)—— 删除已排序链表重复元素(Remove Duplicates from Sorted List)
- [LeetCode] Remove Duplicates from Sorted List 删除排序链表中的重复元素
- LeetCode(Remove Duplicates from Sorted List) 两道删除排序链表中重复数字
- [Lintcode]Remove Duplicates from Sorted List II 删除排序链表中的重复数字 II
- Leetcode Remove Duplicates from Sorted List II 删除链表中重复的元素II
- [LeetCode]Merge Two Sorted Lists & Remove Duplicates from Sorted List 两个有序链表合并为一个&删除链表重复元素
- [C++]Remove Duplicates from Sorted List 从已排序的链表中移除重复元素
- Leetcode:Remove Duplicates from Sorted List 删除单链表中重复的节点
- leetcode:Remove Duplicates from Sorted Array去掉排序数组中重复的元素
- LeetCode | Remove Duplicates from Sorted List(删除链表中重复的数据)
- (LeetCode)Remove Duplicates from Sorted List --- 链表中删除重复元素
- lintcode 容易题:Remove Duplicates from Sorted List 删除排序链表中的重复元素
- LeetCode | Remove Duplicates from Sorted List II(删除链表中重复结点2)
- Leetcode Remove Duplicates from Sorted List 删除链表中的重复元素
- leetcode——Remove Duplicates from Sorted List II 删除排序字符串中重复字符(AC)