LeetCode怎样删除排序链表中的重复元素
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,这篇文章将为大家详细讲解有关LeetCode怎样删除排序链表中的重复元素,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1,问题简述给定一个排序链表,删除所有含有重复
千家信息网最后更新 2025年12月03日LeetCode怎样删除排序链表中的重复元素
这篇文章将为大家详细讲解有关LeetCode怎样删除排序链表中的重复元素,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
1,问题简述
给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。
2,示例
示例 1:输入: 1->2->3->3->4->4->5输出: 1->2->5示例 2:输入: 1->1->1->2->3输出: 2->3
3,题解思路
使用哨兵节点,结合键值对集合LinkedHashMap集合进行解决
4,题解程序
import java.util.*;import java.util.stream.Collectors;public class DeleteDuplicatesTest3 {public static void main(String[] args) {ListNode l1 = new ListNode(1);ListNode l2 = new ListNode(2);ListNode l3 = new ListNode(3);ListNode l4 = new ListNode(3);ListNode l5 = new ListNode(4);ListNode l6 = new ListNode(4);ListNode l7 = new ListNode(5);l1.next = l2;l2.next = l3;l3.next = l4;l4.next = l5;l5.next = l6;l6.next = l7;ListNode listNode = deleteDuplicates(l1);System.out.println("listNode = " + listNode);}public static ListNode deleteDuplicates(ListNode head) {if (head == null) {return null;}if (head.next == null) {return head;}HashMaphashMap = new LinkedHashMap<>(); ListNode dummyNode = head;while (dummyNode != null) {hashMap.put(dummyNode.val, hashMap.getOrDefault(dummyNode.val, 0) + 1);dummyNode = dummyNode.next;}Listlist = hashMap.entrySet().stream().filter(Objects::nonNull).filter(x -> x.getValue() == 1) .map(Map.Entry::getKey).collect(Collectors.toList());ListNode newHead = new ListNode(-1);int size = list.size();ListNode tempNode = newHead;for (int i = 0; i < size; i++) {tempNode.next = new ListNode(list.get(i));tempNode = tempNode.next;}return newHead.next;}}
5,题解程序图片版
关于"LeetCode怎样删除排序链表中的重复元素"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
排序
示例
篇文章
题解
元素
数字
更多
程序
节点
输入
输出
不错
原始
实用
内容
哨兵
图片
思路
文章
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
银行软件开发对学历有要求吗
如何将服务器上指定端口打开
网络安全主要技术包括
数据库升级准备工作
数据库连串
升级大疆限飞数据库
数据库原理何玉洁答案
网络安全法出台历程
外卖骑手劳动权益调查数据库
浙江省生产网络安全学院
数据库接口控制
三台电脑怎么设置服务器
乐享互联网科技
学生网络安全 做法与隐患
cs和软件开发哪个好
服务器如何做vps
中国电信服务器通讯异常
软件开发需求风险和机遇描述
数据库规定字段大写还是小写
网络技术如何影响营销渠道
软件开发办什么执照
路伟玲软件开发
济南软件开发小单位招聘
vf创建数据库表命令
章丘便民平台软件开发专业制作
成都云穹网络技术有限公司
朝阳区网络计算机软件开发排名
金融科技是互联网金融
我的世界服务器地形名称
万达数据库