原题链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list-ii/

1、map

ListNode* deleteDuplicates(ListNode* head) {map<int,int> map;ListNode *p=head;while(p!=NULL){map[p->val]++;//将所有元素存放在map中并计算次数p=p->next;}ListNode *pre=new ListNode;pre->next=head;p=pre;for(auto iter=map.begin();iter!=map.end();iter++){if(iter->second==1){//只记录次数等于1的元素p=p->next;p->val=iter->first;}}p->next=NULL;return pre->next;
}

2、快慢指针

ListNode* deleteDuplicates(ListNode* head) {//通过快慢指针跳过重复元素ListNode *pre=new ListNode;pre->next=head;ListNode *p=pre;while(p->next!=NULL&&p->next->next!=NULL){ListNode *tmp=p->next;if(tmp->val==tmp->next->val){//判断下面两个节点是否重复while(tmp->next!=NULL&&tmp->val==tmp->next->val){//若重复则一直遍历到不重复的那个节点tmp=tmp->next;}p->next=tmp->next;//将中间重复的部分删除}else p=p->next;//若没有重复的部分则后移p再次进行判断}return pre->next;
}

leetcode算法题--删除排序链表中的重复元素 II相关推荐

  1. list元素求和_LeetCode刷题实战82:删除排序链表中的重复元素 II

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  2. Leetcode 129求根节点到叶节点数字之和、104二叉树的最大深度、8字符串转换整数(atoi)、82删除排序链表中的重复元素II、204二分查找、94二叉树的中序遍历、144二叉树的前序遍历

    Top1:Leetcode 129求根节点到叶节点数字之和 官方题解:https://leetcode.cn/problems/sum-root-to-leaf-numbers/solution/qi ...

  3. 算法---删除排序链表中的重复元素 II

    删除排序链表中的重复元素 II 给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 .返回 已排序的链表 . 输入:head = [1,2,3,3,4,4,5] ...

  4. 删除排序链表中的重复元素 II

    82. 删除排序链表中的重复元素 II 存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中 没有重复出现 的数字. 返回同样按升序排 ...

  5. LeetCode Algorithm 83. 删除排序链表中的重复元素

    83. 删除排序链表中的重复元素 Ideas 这题挺简单的,直接一次遍历,如果当前遍历的元素val跟下一个元素的val相等,说明是重复元素,直接把当前item的next指向item->next- ...

  6. leetcode 82. 删除排序链表中的重复元素 II

    难度:中等 频次:77 题目:给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 .返回 已排序的链表 . 解题思路: 一次遍历 注意: 遍历时候,如果两个节点 ...

  7. 31. Leetcode 82. 删除排序链表中的重复元素 II (链表-双指针)

    给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 .返回 已排序的链表 .示例 1:输入:head = [1,2,3,3,4,4,5] 输出:[1,2,5] ...

  8. Leetcode 82. 删除排序链表中的重复元素 II (每日一题 20210908)

    存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中 没有重复出现 的数字.返回同样按升序排列的结果链表.示例 1:输入:head = ...

  9. 每日一题——删除排序链表中的重复项 II

    菜鸡每日一题系列打卡82天 每天一道算法题目 小伙伴们一起留言打卡 坚持就是胜利,我们一起努力! 题目描述(引自LeetCode) 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中没有重 ...

最新文章

  1. git错误“无法推送一些引用到xxx“的解决方法
  2. c语言c2182是什么错误,C语言中一种更优雅的异常处理机制
  3. pip Python 包安装和管理工具
  4. 一个简单案例,5 分钟看懂 Java Lamdba 表达式
  5. 量子遗传算法原理与MATLAB仿真程序
  6. A Faster Volatile
  7. mysql第四章思考与练习答案_Mysql课后思考题
  8. 认知计算机语言学,什么是认知语言学
  9. JavaScript 的这个难点,毁掉了多少程序员?
  10. 钩子怎么画_画男生校服有什么技巧?该注意什么?
  11. java执行Sql脚本
  12. 计算机专业高程课,ArcGIS之数字高程(DEM)分析综合系列套餐
  13. IRedMail 邮箱配置
  14. Bing必应搜索引擎打开新标签默认页的修改
  15. 二维码图像编码原理(字符编码:ASCII、UTF-8)
  16. 阿里巴巴校招笔试题整理
  17. AI编译器与TPU-MLIP
  18. EasyTest 接口自动化测试平台 搭建手顺
  19. vs 2013 必须先停止生成方可关闭解决方案
  20. 殊途同归的两种角度理解岭回归(内含有sklearn例子)

热门文章

  1. python官网下载步骤64位-Python 3.7 64位下载
  2. python装饰器实例-Python装饰器用法实例总结
  3. python最新版下载教程-各种版本的Python下载安装教程
  4. python怎么导入包-如何理解Python中包的引入
  5. 零基础python入门书籍-浅谈零基础自学python入门书
  6. python界面不同按钮实现不同功能-python tkinter实现界面切换的示例代码
  7. python程序实例教程基础-编程小案例
  8. mmdetection2.3.0版本安装过程,以及训练、测试、可视化等(亲测好用,很顺利)
  9. UPYUN的云CDN技术架构演进之路
  10. asio中奇怪的代码