问题

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3820 访问。

给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。

输入: 1->1->2

输出: 1->2

输入: 1->1->2->3->3

输出: 1->2->3


Given a sorted linked list, delete all duplicates such that each element appear only once.

Input: 1->1->2

Output: 1->2

Input: 1->1->2->3->3

Output: 1->2->3


示例

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3820 访问。

public class Program {public static void Main(string[] args) {var head = new ListNode(1) {next = new ListNode(1) {next = new ListNode(2) {next = new ListNode(3) {next = new ListNode(3)}}}};var res = DeleteDuplicates(head);ShowArray(res);Console.ReadKey();}private static void ShowArray(ListNode list) {var node = list;while(node != null) {Console.Write($"{node.val} ");node = node.next;}Console.WriteLine();}private static ListNode DeleteDuplicates(ListNode head) {if(head == null) return null;var cur = head;var next = cur.next;while(cur != null && next != null) {while(next != null && cur.val == next.val) {next = next.next;}cur.next = next;cur = next;next = cur?.next;}return head;}public class ListNode {public int val;public ListNode next;public ListNode(int x) { val = x; }}}

以上给出1种算法实现,以下是这个案例的输出结果:

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3820 访问。

1 2 3

分析:

显而易见,以上算法的时间复杂度为: 

C#LeetCode刷题之#83-删除排序链表中的重复元素(Remove Duplicates from Sorted List)相关推荐

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

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

  2. 83. 删除排序链表中的重复元素 golang

    83. 删除排序链表中的重复元素 golang Me func deleteDuplicates(head *ListNode) *ListNode {if head == nil || head.N ...

  3. 学渣的刷题之旅 leetcode刷题 83.删除排序链表中的重复元素

    给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3->3 输出 ...

  4. LeetCode题 - 83. 删除排序链表中的重复元素 python实现

    给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 示例 1: 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3-&g ...

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

    1. 题目 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 示例 1: 输入: 1->1->2 输出: 1->2示例 2: 输入: 1->1->2-> ...

  6. leetcode No.83 删除排序链表中的重复元素

    题目 链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list 给定一个排序链表,删除所有重复的元素,使得每个元素只 ...

  7. [leetcode]83.删除排序链表中的重复元素

    存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 . 返回同样按升序排列的结果链表. 示例 1: 输入:head = [1,1,2] 输出:[ ...

  8. 83. 删除排序链表中的重复元素

    给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 示例 1: 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3-&g ...

  9. 每日一题:leetcode82. 删除排序链表中的重复元素 II

    题目描述 题目分析 这才是正常的中等题难度嘛,昨天的中等题题解我半天看不懂... 首先,需要增加一个哑节点(操作链表的常规操作),因为有可能删除首节点,我们不想要为首节点添加单独的逻辑.其次,用一个变 ...

最新文章

  1. react滑动切换tab动画效果_Swiper - 免费开源、功能强大的触摸滑动js特效插件
  2. 输出超限怎么解决 oj_三菱PLC输出指示灯输出模块不亮怎么解决
  3. 【Linux】【服务器】 CentOS7下安装MySQL详细过程步骤
  4. Leet Code OJ 118. Pascal's Triangle [Difficulty: Easy]
  5. 安卓小程序 自定义下拉刷新_支付宝小程序设计设计指南
  6. mysql不能访问order,使用ORDER BY时,MySQL不使用索引(“Using filesort”)
  7. 登顶 GitHub 趋势榜,标星1.8k:200 行 JS 代码让画面人物瞬间消失!
  8. 你最后会划掉谁的名字……
  9. Caffe学习:pycaffe接口配置
  10. 微信公众号运营技巧总结
  11. 一个自动化专业的工控人自学编程之路
  12. linux中文成方块,给linux添加字体
  13. 蛋白质二级结构预测-Chou-Fasman预测方法
  14. C 语言面试题大汇总
  15. 三角函数有理式的不定积分
  16. Problem D: 四阶多项式
  17. matlab lms算法,LMS算法
  18. 腾讯云服务器4核8g支持多少人同时在线?并发用户数计算
  19. 软考中级 真题 2014年上半年 系统集成项目管理工程师 基础知识 上午试卷
  20. 域服务器计算机信息丢失,网管的困惑:域控制器哪去了Windows系统 -电脑资料

热门文章

  1. 如何用Pygame写游戏(二十)
  2. 爬虫-例子-飞机图片的提取-抓取一个文章中的全部图片
  3. linux-2-wc-od-du-df-文件目录磁盘使用情况查看
  4. TIDB事务过大transction too large解决方法
  5. 2.7.3-YARN-获取debug命令:resourceManager+nodeManager
  6. 第16届电源技术专题研讨会
  7. 图解CentOS系统启动流程
  8. Linux下的tar压缩解压缩命令详解(转)
  9. Windows 窗体重绘
  10. IOS 如何获取ppi