题解 | #删除链表中重复的结点#

删除链表中重复的结点

https://www.nowcoder.com/practice/fc533c45b73a41b0b44ccba763f866ef

/*class ListNode {
 *     val: number
 *     next: ListNode | null
 *     constructor(val?: number, next?: ListNode | null) {
 *         this.val = (val===undefined ? 0 : val)
 *         this.next = (next===undefined ? null : next)
 *     }
 * }
 */

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 * 
 * @param pHead ListNode类 
 * @return ListNode类
 */
export function deleteDuplication(pHead: ListNode): ListNode {
    // write code here
    if (pHead === null) return null
    let root = new ListNode(0)
    root.next = pHead
    let current = root
    let next1 = current.next
    let next2
    if (next1) {
        next2 = next1.next
    }
    while (next1 && next2) {
        if (next1.val === next2.val) {
            const tempVal = next1.val
            while (next2 && tempVal === next2.val) {
                next2 = next2.next
            }
            current.next = next2
            next1 = next2
            if (next1) {
                next2 = next1.next
            }
        } else {
            current = next1
            next1 = next2
            if (next1) {
                next2 = next1.next
            }
        }
    }
    return root.next
}

全部评论

相关推荐

今天 00:11
已编辑
广东工业大学 算法工程师
避雷深圳  yidao,试用期 6 个月。好嘛,试用期还没结束,就直接告诉你尽快找下一家吧,我谢谢您嘞
牛客75408465号:笑死,直属领导和 hr 口径都没统一,各自说了一些离谱的被裁理由,你们能不能认真一点呀,哈哈哈哈哈😅😅😅
点赞 评论 收藏
分享
Noel_:中石油是这样的 哥们侥幸混进免笔试名单 一看给我吓尿了
点赞 评论 收藏
分享
09-27 00:29
东北大学 Java
伟大的麻辣烫:查看图片
阿里巴巴稳定性 75人发布 投递阿里巴巴等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务