golang力扣leetcode 83. 删除排序链表中的重复元素

简介: golang力扣leetcode 83. 删除排序链表中的重复元素

题解

检查current与下一个的val相等吗,相等就把current.next连到下下个上面,然后重复判断,直到不相等为止

代码

package leetcode
type ListNode struct {
  Val  int
  Next *ListNode
}
func deleteDuplicates(head *ListNode) *ListNode {
  current := head
  for current != nil {
    for current.Next != nil && current.Val == current.Next.Val {
      current.Next = current.Next.Next
    }
    current = current.Next
  }
  return head
}
目录
相关文章
|
5月前
【力扣】-- 移除链表元素
【力扣】-- 移除链表元素
56 1
|
5月前
|
程序员 C语言
【C语言】LeetCode(力扣)上经典题目
【C语言】LeetCode(力扣)上经典题目
|
5月前
|
索引
力扣(LeetCode)数据结构练习题(3)------链表
力扣(LeetCode)数据结构练习题(3)------链表
131 0
|
5月前
力扣(LeetCode)数据结构练习题(2)
力扣(LeetCode)数据结构练习题(2)
42 0
|
5月前
|
存储
力扣(LeetCode)数据结构练习题
力扣(LeetCode)数据结构练习题
80 0
|
5月前
|
索引
Leetcode第三十三题(搜索旋转排序数组)
这篇文章介绍了解决LeetCode第33题“搜索旋转排序数组”的方法,该问题要求在旋转过的升序数组中找到给定目标值的索引,如果存在则返回索引,否则返回-1,文章提供了一个时间复杂度为O(logn)的二分搜索算法实现。
42 0
Leetcode第三十三题(搜索旋转排序数组)
|
5月前
LeetCode第二十四题(两两交换链表中的节点)
这篇文章介绍了LeetCode第24题的解法,即如何通过使用三个指针(preNode, curNode, curNextNode)来两两交换链表中的节点,并提供了详细的代码实现。
51 0
LeetCode第二十四题(两两交换链表中的节点)
|
5月前
Leetcode第21题(合并两个有序链表)
这篇文章介绍了如何使用非递归和递归方法解决LeetCode第21题,即合并两个有序链表的问题。
76 0
Leetcode第21题(合并两个有序链表)
|
9月前
|
算法
【经典LeetCode算法题目专栏分类】【第7期】快慢指针与链表
【经典LeetCode算法题目专栏分类】【第7期】快慢指针与链表
|
9月前
|
存储 SQL 算法
LeetCode力扣第114题:多种算法实现 将二叉树展开为链表
LeetCode力扣第114题:多种算法实现 将二叉树展开为链表