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

给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。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;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章