删除排序链表所有重复元素,使得每个元素只出现一次(一)

给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。LeetCode的83题,以后题目的序号有可能会改变

示例 1:   给定链表: 1->1->2    处理结果: 1->2

示例 2:   给定链表: 1->1->2->3->3     处理结果: 1->2->3

代码如下:

原文链接:https://blog.csdn.net/if_i_were_a/article/details/89092123

public ListNode deleteDuplicates(ListNode head) {
  //设置一个指向当前元素的指针
  ListNode current = head;
  //当链表为空或者链表中遍历到最后一个元素时,出循环
  while (current != null && current.next != null) {
    //如果找到当前节点和它的下一个结点的值相同,删除掉下一个结点
    if (current.next.val == current.val) {
      current.next = current.next.next;
    } else {
      //如果没有找到,当前节点后移
      current = current.next;
    }
  }
  return head;
}

 

posted @   MichaelMaDragon  阅读(299)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示