[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;
      }

    };

相关推荐
khalil10204 小时前
代码随想录算法训练营Day-46 动态规划13 | 647. 回文子串、516.最长回文子序列、动态规划总结
数据结构·c++·算法·leetcode·动态规划·回文子串·回文子序列
he___H4 小时前
算法快与慢--哈希+双指针
算法·leetcode·哈希算法
用户2367829801685 小时前
Linux df 命令深度解析:从磁盘空间监控到 inode 耗尽排查
linux
3301_5 小时前
Debian13 ThinkPad T490安装指纹解锁
linux
Mortalbreeze6 小时前
深度理解进程----进程状态
linux·运维·服务器
艾莉丝努力练剑6 小时前
【Linux网络】Linux 网络编程入门:TCP Socket 编程(下)
linux·运维·服务器·网络·c++·tcp/ip
宵时待雨6 小时前
linux笔记归纳4:进程概念
linux·运维·服务器·c++·笔记
零K沁雪6 小时前
OpenV_X_N 2.5.x 配置文件选项详解
linux
凯瑟琳.奥古斯特6 小时前
力扣2760 C++滑动窗口解法
数据结构·c++·算法·leetcode·职场和发展
_深海凉_6 小时前
LeetCode热题100-不同路径
算法·leetcode·职场和发展