LeetCode Remove Duplicates from Sorted List
2014-11-09 18:50
169 查看
Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,
Given
Given
题意:删除链表中的重复元素
思路:用两个结点,一个表示当前非重复元素的最后一个元素,别外一个表示当前遍历的元素,如果当前元素与非重复元素的最后一个不相等,将当前元素加到非重复元素的最后,如果相等,就将当前非重复元素的最后一个的下一个指向当前的下一个
/**
* 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) {
ListNode p = head, next = null;
if (p != null) next = p.next;
while (next != null) {
if (next.val != p.val) {
p.next = next;
p = next;
} else {
p.next = next.next;
}
next = next.next;
}
return head;
}
}
For example,
Given
1->1->2, return
1->2.
Given
1->1->2->3->3, return
1->2->3.
题意:删除链表中的重复元素
思路:用两个结点,一个表示当前非重复元素的最后一个元素,别外一个表示当前遍历的元素,如果当前元素与非重复元素的最后一个不相等,将当前元素加到非重复元素的最后,如果相等,就将当前非重复元素的最后一个的下一个指向当前的下一个
/**
* 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) {
ListNode p = head, next = null;
if (p != null) next = p.next;
while (next != null) {
if (next.val != p.val) {
p.next = next;
p = next;
} else {
p.next = next.next;
}
next = next.next;
}
return head;
}
}
相关文章推荐
- leetcode 38: Remove Duplicates from Sorted List II
- LeetCode - Remove Duplicates from Sorted List
- leetcode 37: Remove Duplicates from Sorted List
- LeetCode_Remove Duplicates from Sorted List II
- LeetCode Online Judge 题目C# 练习 - Remove Duplicates from Sorted List II
- LeetCode: Remove Duplicates from Sorted List
- [leetcode] Remove Duplicates from Sorted List II
- [Leetcode] Remove Duplicates from Sorted List II
- [Leetcode] Remove Duplicates from Sorted List
- Leetcode: Remove Duplicates from Sorted List
- leetcode 38: Remove Duplicates from Sorted List II
- [LeetCode] Remove Duplicates from Sorted List
- [LeetCode] Remove Duplicates from Sorted List
- LeetCode: Remove Duplicates from Sorted List
- [LeetCode] Remove Duplicates from Sorted List II
- [LeetCode] Remove Duplicates from Sorted List II, Solution
- [LeetCode] Remove Duplicates from Sorted List II
- [Leetcode] Remove Duplicates from Sorted List II
- LeetCode_Remove Duplicates from Sorted List
- [leetcode] Remove Duplicates from Sorted List