[leetcode]remove-duplicates-from-sorted-list-ii

. - 力扣(LeetCode)

给定一个已排序的链表的头 head删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表

示例 1:

复制代码
输入:head = [1,2,3,3,4,4,5]
输出:[1,2,5]

示例 2:

复制代码
输入:head = [1,1,1,2,3]
输出:[2,3]

提示:

  • 链表中节点数目在范围 [0, 300]

  • -100 <= Node.val <= 100

  • 题目数据保证链表已经按升序 排列

    class Solution {
    public:
    ListNode* deleteDuplicates(ListNode* head) {
    if (!head) {
    return head;
    }

    复制代码
          ListNode* dummy = new ListNode(0, head);
    
          ListNode* cur = dummy;
          while (cur->next && cur->next->next) {
              if (cur->next->val == cur->next->next->val) {
                  int x = cur->next->val;
                  while (cur->next && cur->next->val == x) {
                      cur->next = cur->next->next;
                  }
              }
              else {
                  cur = cur->next;
              }
          }
    
          return dummy->next;
      }

    };

相关推荐
youngee1116 分钟前
hot100-55有效的括号
算法·leetcode·职场和发展
小杨同学4917 分钟前
Linux 从入门到实战:常用指令与 C 语言开发全指南
linux
福尔摩斯张36 分钟前
Linux的pthread_self函数详解:多线程编程中的身份标识器(超详细)
linux·运维·服务器·网络·网络协议·tcp/ip·php
ArrebolJiuZhou1 小时前
02arm指令集(一)——LDR,MOV,STR的使用
linux·网络·单片机
一只旭宝1 小时前
Linux专题八:生产者消费者,读写者模型以及网络编程
linux·网络
Web极客码1 小时前
如何在 Linux 中终止一个进程?
linux·运维·服务器
大聪明-PLUS1 小时前
Linux 中的 GPIO 驱动程序
linux·嵌入式·arm·smarc
Clarence Liu2 小时前
虚拟机与容器的差异与取舍
linux·后端·容器
A13247053122 小时前
防火墙配置入门:保护你的服务器
linux·运维·服务器·网络
摇滚侠2 小时前
CentOS 7 Linux 离线安装 Docker:离线安装包、依赖文件、安装步骤
linux·docker·centos