【leetcode刷题笔记】Remove Duplicates from Sorted List II
2014-07-23 09:32
465 查看
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.
For example,
Given
Given
题解:类似Remove Duplicates from Sorted List, 不过这次是如果有重复的数,那么把列表中所有的这个数都删除。
主要考察链表操作,建立一个新的链表头newNode,它的next指针指向head,head作为游标,初始指向newNode,然后当发现重复的时候,就可以利用一个while循环把重复的元素全部删除了,因为head总是指向要删除的节点前面一个节点。
代码如下:
For example,
Given
1->2->3->3->4->4->5, return
1->2->5.
Given
1->1->1->2->3, return
2->3.
题解:类似Remove Duplicates from Sorted List, 不过这次是如果有重复的数,那么把列表中所有的这个数都删除。
主要考察链表操作,建立一个新的链表头newNode,它的next指针指向head,head作为游标,初始指向newNode,然后当发现重复的时候,就可以利用一个while循环把重复的元素全部删除了,因为head总是指向要删除的节点前面一个节点。
代码如下:
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */ public class Solution { public ListNode deleteDuplicates(ListNode head) { if(head == null || head.next == null) return head; ListNode newNode = new ListNode(0); newNode.next = head; head = newNode; while(head.next != null && head.next.next != null){ if(head.next.val == head.next.next.val){ int val = head.next.val; while(head.next != null && head.next.val == val){ head.next = head.next.next; } } else head = head.next; } return newNode.next; } }
相关文章推荐
- [leetcode笔记] Remove Duplicates from Sorted List II
- LeetCode习题笔记——Remove Duplicates from Sorted List II
- leetcode笔记--Remove Duplicates from Sorted List II
- leetcode 38: 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
- [面试真题] LeetCode: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 Online Judge 题目C# 练习 - Remove Duplicates from Sorted List II
- LeetCode: Remove Duplicates from Sorted List II
- [LeetCode] Remove Duplicates from Sorted List、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 82: Remove Duplicates from Sorted List II
- LeetCode | Remove Duplicates from Sorted List II