码迷,mamicode.com
首页 > 其他好文 > 详细

删除链表中重复的结点

时间:2021-06-20 18:13:05      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:出现   代码实现   link   一个   func   ted   UNC   val   指针   

删除链表中重复的结点

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

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

 

示例 1:

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

示例 2:

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

单指针代码实现

/**
 * Definition for singly-linked list.
 * type ListNode struct {
 *     Val int
 *     Next *ListNode
 * }
 */
func deleteDuplicates(head *ListNode) *ListNode {
    if head == nil  {
        return nil
    }

    cur := head

    for {
        if cur.Next == nil {
            break
        }

        if cur.Val != cur.Next.Val {
            cur = cur.Next
            continue
        }

        cur.Next = cur.Next.Next
    }

    return head
}

删除链表中重复的结点

标签:出现   代码实现   link   一个   func   ted   UNC   val   指针   

原文地址:https://www.cnblogs.com/maomaomaoge/p/14906357.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!