当前位置: 首页 > news >正文

【算法专题--链表】删除排序链表中的重复元素 -- 高频面试题(图文详解,小白一看就懂!!)

目录

一、前言

二、题目描述 

三、解题方法 

⭐双指针

四、总结与提炼

五、共勉  


一、前言

       删除排序链表中的重复元素这道题,可以说是--链表专题--,最经典的一道题,也是在面试中频率最高的一道题目,通常在面试中,面试官可能会从多个方面考察这道题目,所以大家需要对这道题目非常熟悉哦!!
      本片博客就来详细的讲讲解一下 删除排序链表中的重复元素 的实现方法,让我们的面试变的更加顺利!!!

二、题目描述 

给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 

三、解题方法 

⭐双指针

这道题要  删除链表中的重复节点

  • 首先删除一个链表节点,是通过修改其上一个节点和下一个节点之间的连接关系实现的。 

  •  其次链表有序,因此我们要删除那些重复元素,可以用一个指针指向当前节点的值,另一个指针去找到下一个与它值不同的节点,然后建立这两个节点的连接,从而删除那些重复元素

代码:

class Solution {
public:ListNode* deleteDuplicates(ListNode* head) {// 双指针 思路ListNode* cur = head;ListNode* nextnode;while(cur){// 找到下一个不同值的节点,初始为当前节点的下一个节点nextnode = cur->next;while(nextnode && nextnode->val == cur->val){// 找到 下一个不同值节点nextnode = nextnode->next;}// 当前节点与下一个不同值节点建立连接cur->next = nextnode;// 更新当前节点cur = nextnode;}return head;}
};

 四、总结与提炼

       最后我们来总结一下本文所介绍的内容,本文讲解来一道力扣中有关 删除排序链表中的重复元素的题目,这道题目是校招笔试面试中有关链表章节非常高频的一道题目大家下去一定要自己再画画图,分析一下,把这段代码逻辑自己实现一遍,才能更好地掌握 

五、共勉  

       以下就是我对 删除排序链表中的重复元素 的理解,如果有不懂和发现问题的小伙伴,请在评论区说出来哦,同时我还会继续更新对 链表专题 的理解,请持续关注我哦!!! 

http://www.lryc.cn/news/379791.html

相关文章:

  • 【ajax基础01】ajax简介
  • [数据集][目标检测]棉花叶子害虫检测数据集VOC+YOLO格式595张1类别
  • Nominatim免费的地址解析,逆地址解析,OpenStreetMap开源地图数据【全网最全】
  • js 移除字符串中所有的a标签;js 移除字符串中所有的a标签,但是保留a标签包裹的部分
  • 深信服科技:2023网络安全深度洞察及2024年趋势研判报告
  • windows下mysql修改 my.ini的datadir后 `Access denied`
  • Java比较运算符
  • 「网络原理」IP 协议
  • 电商平台生活用品销售数据分析与应用
  • FastAdmin数据库设计规范
  • 基于MATLAB仿真LFM线性调频信号
  • 互联网的盈利模式
  • 什么是距离选通型水下三维激光扫描仪?(下)
  • 计算机网络(谢希仁第六版)| 课后习题与答案 | 物理层 | 题目知识点详细分析
  • 安卓安装linux + .net环境
  • ES6 新增Set 和 Map 两种数据结构
  • 【学一点儿前端】单页面点击前进或后退按钮导致的内存泄露问题(history.listen监听器清除)
  • vue跳转页面 如果登录了直接跳转 没有登录登录完以后直接跳转,使用vuex管理登录状态
  • 渗透测试-若依框架的杀猪交易所系统管理后台
  • 【免费】中国电子学会2024年03月份青少年软件编程Python等级考试试卷一级真题(含答案)
  • 深入了解RTMP推流技术:视频汇聚EasyCVR低延迟与高稳定性分析
  • containerd手动配置容器网络
  • 数据迁移到 Django 模型表:详尽指南
  • 代码随想三刷二叉树篇4
  • 『大模型笔记』如何让小型语言模型发挥作用!
  • jnp.diag
  • bert文本分类微调笔记
  • 运维:k8s常用命令大全
  • PHP基础之错误与异常
  • 详解Spring AOP(一)