重复节点删除

删除链表中重复的结点

http://www.nowcoder.com/questionTerminal/fc533c45b73a41b0b44ccba763f866ef

public ListNode deleteDuplication(ListNode pHead)
    {
        if(pHead == null){
            return null;
        }

        //设置前置指针
        ListNode head = new ListNode(-1);
        head.next = pHead;
        ListNode pre = head;
        ListNode cur = head.next;

        //判断是否为null
        while(cur!=null){
            if(cur.next!=null && cur.val == cur.next.val){
                while(cur.next!=null && cur.val == cur.next.val){
                    cur = cur.next;
                }
                pre.next = cur.next;
                if(cur.next==null){
                    return head.next;
                }
                cur = cur.next;
            }else {
                pre = cur;
                cur = cur.next;
            }
        }
        return head.next;
    }
全部评论

相关推荐

09-25 11:39
已编辑
北京航空航天大学 Java
我的代码出BUG了:@美团@腾讯@字节跳动@阿里巴巴。你们好好看看吧,你们就挂我吧,到时候被人家鸽穿还得录取我
点赞 评论 收藏
分享
头像
10-27 15:50
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务