题目描述
给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。
示例 1:
输入: 1->1->2
输出: 1->2
示例 2:
输入: 1->1->2->3->3
输出: 1->2->3
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
解析:
这个题目是力扣的简单题,注意一个坑点是题目中所有的节点都相同。其实在编程中随时调整后指针位置就好了。
CODE
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode deleteDuplicates(ListNode head) {
if(head==null||head.next==null) return head;
ListNode node=head;
ListNode pre=node.next;
while(pre!=null)
{
if(node.val==pre.val)
{
pre=pre.next;
node.next=pre; //随时调整位置。
}
else
{
node.next=pre;
node=pre;
pre=pre.next;
}
}
return head;
}
}