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

【单链表】(更新中...)

一、 题单

206.反转链表
203.移除链表元素
 876.链表的中间结点
BM8 链表中倒数最后k个结点
21.合并两个有序链表

二、题目简介及思路

        206.反转链表

                给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

                思路简单,但是除了要两个指针进行反转外,还需要一个指针保存链接关系。

                        我的题解

        203.移除链表元素

                给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 

                方法一:遍历删除所有值为val的值

                        我的题解

                方法二:找值不是val的尾插到新链表返回                         

                        我的题解

        876.链表的中间结点

                给你单链表的头结点 head ,请你找出并返回链表的中间结点。

如果有两个中间结点,则返回第二个中间结点。

               快慢指针,一开始都指向头,然后快的走两步,慢的走一步,最后慢的会正好停在中间。

                        我的题解

        BM8 链表中倒数最后K个结点

                输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。如果该链表长度小于k,请返回一个长度为 0 的链表。

                可以使用先遍历一变数个数,再遍历一遍到倒数第k个数,但是这样麻烦且繁琐。

                可以使用快慢指针,让快指针先走k步,快慢指针再一起走。

                        我的题解

        21.合并两个有序链表

                将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

                取小的尾插, 比203的还简单一点,但是也要考虑一些细节。

                        我的题解

三、总结

  • 单链表在进行操作的时候,一定要注意它的链接关系,可能需要定义多个指针才能完成操作,要时刻注意链接关系是否已经改变,一定要画图!!
  • 新链表尾插,快慢指针,改变链接关系...
  • 尾插要考虑这个链表是不是空的,不要对空指针进行一顿操作。
  • 特殊情况一定要多找找,多列举,带入边界值尝试,有很多小细节。

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

相关文章:

  • 开源堡垒机JumpServer配置教程:使用步骤与配置
  • 上门服务小程序开发,打造便捷生活新体验
  • iOS中的类型推断及其在Swift编程语言中的作用和优势
  • 工业检测基础-缺陷形态和相机光源选型
  • Python100道练习题
  • 2024年华中杯数学建模A题太阳能路灯光伏板的朝向设计问题解题全过程文档及程序
  • 【JavaWeb后端学习笔记】Java上传文件到阿里云对象存储服务
  • 网盘管理系统
  • learn-(Uni-app)跨平台应用的框架
  • 趋同进化与趋异进化的区别及分析方法-随笔03
  • 2024年华中杯数学建模B题使用行车轨迹估计交通信号灯周期问题解题全过程文档及程序
  • 高效查找秘密武器一:位图
  • 自回归模型(AR )
  • Linux内核 -- Linux驱动从设备树dts文件中读取字符串信息的方法
  • 图片懒加载+IntersectionObserver
  • MySQL的获取、安装、配置及使用教程
  • Odoo在线python代码开发
  • 在.NET 6中使用Serilog收集日志
  • 【D3.js in Action 3 精译_043】5.1 饼图和环形图的创建(中):D3 饼图布局生成器的配置方法
  • 离线安装ollama到服务器
  • 自动化点亮LED灯之程序编写
  • linux 系列服务器 高并发下ulimit优化文档
  • 人工智能入门数学基础:统计推断详解
  • Spark区分应用程序 Application、作业Job、阶段Stage、任务Task
  • 【Liunx篇】基础开发工具 - yum
  • docker学习笔记(五)--docker-compose
  • 电子商务人工智能指南 4/6 - 内容理解
  • Hadoop3集群实战:从零开始的搭建之旅
  • Kotlin设计模式之桥接模式
  • 详解组合模式