leetcode icon indicating copy to clipboard operation
leetcode copied to clipboard

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

Open buuing opened this issue 4 years ago • 0 comments

存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。

返回同样按升序排列的结果链表。

示例 1:

image

输入:head = [1,1,2]
输出:[1,2]

示例 2:

image

输入:head = [1,1,2,3,3]
输出:[1,2,3]

提示:

  • 链表中节点数目在范围 [0, 300] 内
  • -100 <= Node.val <= 100
  • 题目数据保证链表已经按升序排列

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。




  • 解题思路
const deleteDuplicates = head => {
  let prev = { val: -Infinity, next: head }
  let curr = head
  while (curr) {
    if (prev.val === curr.val) {
      prev.next = curr.next
    } else {
      prev = curr
    }
    curr = curr.next
  }
  return head
}

buuing avatar May 27 '21 15:05 buuing