【LeetCode每日一题】83. 删除排序链表中的重复元素

发布时间:2024年01月14日

2024-1-14

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

在这里插入图片描述

思路:

1.cur代替头结点移动,不断修改cur的next域的地址值
2.curNext记录cur下一个结点
3.如果cur的值等于curNext的值,改变cur.next的指向
4.不相等,把cur移动到curNext位置
移动curNest的位置

    public ListNode deleteDuplicates(ListNode head) {//删除链表中的重复元素
        if (head ==null){//排除头结点为空的情况
            return null;
        }
        if (head.next==null){
            return head;//只有一个结点的情况
        }
        ListNode cur = head;//代替头结点移动
        ListNode curNest = cur.next;//记录cur的下一个结点

        while (curNest != null){
            if (curNest.val== cur.val){//遇到相同的值,改变next存储的值
                cur.next = curNest.next;
            }else {
                cur = curNest;
            }
            curNest = curNest.next;
        }
        return  head;
    }

点击移步博客主页,欢迎光临~

偷cyk的图

文章来源:https://blog.csdn.net/m0_64003319/article/details/135583378
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。