LintCode 删除排序链表中的重复元素
2024-10-08 00:37:07
给定一个排序链表,删除所有重复的元素每个元素只留下一个。
样例
给出 1->1->2->null
,返回 1->2->null
给出 1->1->2->3->3->null
,返回 1->2->3->null
分析:先开始的时候是想着head 和head->next作为基准 但其实pre和cur更合适
/**
* Definition of ListNode
* class ListNode {
* public:
* int val;
* ListNode *next;
* ListNode(int val) {
* this->val = val;
* this->next = NULL;
* }
* }
*/
class Solution {
public:
/**
* @param head: The first node of linked list.
* @return: head node
*/
ListNode *deleteDuplicates(ListNode *head) {
// write your code here
if(head==NULL)
return 0;
if(head->next==NULL)
return head;
ListNode *cur=head;
ListNode *pre=NULL;
while(cur!=NULL)
{ if(pre!=NULL&&pre->val==cur->val)
{
pre->next=cur->next;
cur=pre->next;
}
else
{
pre=cur;
cur=pre->next;
}
}
return head;
}
};
最新文章
- 命令大全/cmd/bash
- openx中如何使用site-variable(参数)限制(关键词)广告显示
- Oracle-- (RANK) 排名函数
- window.location.href的用法
- 通过java输出当前系统时间
- Fixflow引擎解析(五)(内核) - 基于Token驱动的引擎内核运转原理
- spring中加入log4j
- ArcGIS Server Manager登陆不了
- C++中将int转变成string和string转变成int
- ——————————JavaScript中,对String字符串的一些操作——————————
- 基于Dubbo的http自动测试工具分享
- C#现代代码风格指南
- Unicode 与 utf8 utf16 utf32的关系
- 最大熵模型(MEM)
- vue生命周期中created和mounted的区别
- C++Primer笔记之复制控制
- 再一道区间DP -- P4170 [CQOI2007]涂色
- python的面向对象-面向对象设计
- FCoin API
- Google、亚马逊、微软 、阿里巴巴开源软件一览