leetcode如何删除排序链表中的重复元素
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍leetcode如何删除排序链表中的重复元素,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!题目链接https://leetcode-cn.com/problem
千家信息网最后更新 2026年11月03日leetcode如何删除排序链表中的重复元素
这篇文章主要介绍leetcode如何删除排序链表中的重复元素,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
题目链接
https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list/
题目描述
给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。
示例 1:
输入: 1->1->2输出: 1->2
示例 2:
输入: 1->1->2->3->3输出: 1->2->3
解题方案
思路
标签:链表
指定cur指针指向头部head
当cur和cur.next的存在为循环结束条件,当二者有一个不存在时说明链表没有去重复的必要了
当cur.val和cur.next.val相等时说明需要去重,则将cur的下一个指针指向下一个的下一个,这样就能达到去重复的效果
如果不相等则cur移动到下一个位置继续循环
时间复杂度:O(n)
代码
Java版本
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode deleteDuplicates(ListNode head) { ListNode cur = head; while(cur != null && cur.next != null) { if(cur.val == cur.next.val) { cur.next = cur.next.next; } else { cur = cur.next; } } return head; }}JavaScript版本
/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} head * @return {ListNode} */var deleteDuplicates = function(head) { var cur = head; while(cur && cur.next) { if(cur.val == cur.next.val) { cur.next = cur.next.next; } else { cur = cur.next; } } return head;};画解


以上是"leetcode如何删除排序链表中的重复元素"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
元素
排序
内容
指向
指针
版本
示例
篇文章
题目
循环
输入
输出
复杂
必要
代码
价值
位置
兴趣
复杂度
头部
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司排名
北京路客互联网科技有限公司
科技信息互联网
科技与互联网发展
杭州互联网科技公司
北京互联网络科技有限公司
上海喔噻互联网科技
广州善班互联网科技
广州紫鲸互联网科技
互联网科技美容
互联网科技公司招聘
团飞科技与伯堂互联网服务平台
移动互联网年度科技创新
开一家科技互联网公司需要多少钱
西安小鹰速贷互联网科技有限公司
玉溪新华互联网科技好不好
科技大学互联网
广州富喜互联网络科技
广州百诚互联网科技有限公司官网
前海云享互联网科技
科技和互联网公司
鸠鸠互联网科技
美国互联网科技巨头监管
腾讯阿里互联网科技
多迪互联网科技有限公司
联恩商钥互联网科技有限公司
语蝶互联网科技有限公司
河南住房之家互联网科技
容联科技互联网电商
中国互联网公司的科技投入