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

链表相关算法题

小细节

初始化问题

我们这样子new一个ListNode

它里面的默认值是0,所以我们不能这样

如果我们为空,我们要返回null

节点结束条件判断(多创建节点问题)

参考示例3217

解析:

我的答案是多了一个无用节点

这是因为我每次都是在当前节点添加,然后直接创建下一个新节点

例如下面的

那你怎么能保证我下一个节点一定会用到呢?如果用不到的话他默认值为0,那我们要收集的答案不久多了一个无用节点?

所以我现在就换个思路

我们一般来说是有个头节点的对吧?

两种头节点

无值头节点:result.next才是我们真正的结果,也就是result这个节点是不存值的,我们的答案是result.next,下一开始才是我们的正式答案

有值头节点:result就是我们的真正结果,一开始就存了值

我后面就用第一种节点的方式了

也就是我们符合了要加入节点的条件,我们才创建节点

我们用创建一个新的节点,也就是.next,用这个下一个节点来装填我们的新的元素,这样子就不会多创建一个无用节点了

遍历链表

1290二进制链表转整数

每往右遍历一位,我们的结果就多×2

2180合并零之间的节点

817链表组件


删除节点

203移除链表元素

3217移除数组中存在的节点

83删除排序链表中重复的元素

82删除排序链表中重复的元素2

237删除链表中的节点

不能操作头节点

我们只能操作准备被删除的那个节点

所以我们直接简洁地跳过这个节点就好了


插入节点

2807在链表中插入最大公约数

147对链表进行插入排序


反转链表

206反转链表

92反转链表2

相关文章:

  • git clean password
  • Vue2+Vue3 130~180集学习笔记
  • OpenHarmony-Risc-V上运行openBLAS中的benchmark
  • C++ 迭代器失效详解:如何避免 vector 操作中的陷阱
  • SQL预编译——预编译真的能完美防御SQL注入吗
  • C#插件与可扩展性
  • 使用手机归属地查询API,使效率事半功倍
  • Jsp技术入门指南【五】详细讲解jsp结构页面
  • 【AI模型学习】关于写论文——论文的审美
  • 【RK3588 嵌入式图形编程】-SDL2-扫雷游戏-结束和重新开始游戏
  • 黑马V11版 最新Java高级软件工程师课程-JavaEE精英进阶课
  • AIP-236 策略预览
  • Linux简介
  • MapWindow GIS:开源的GIS程序 库和工具,适用于基于C#和.NET的应用程序
  • spring响应式编程系列:总体流程
  • Git-使用教程(新手向)
  • MCP Server驱动传统SaaS智能化转型:从工具堆叠到AI Agent生态重构,基于2025年技术演进与产业实践
  • 【mysql】mysql疑难问题:实际场景解释什么是排它锁 当前读 快照读
  • 【Linux】进程概念(二):PCB,ps 和 fork
  • excel解析图片pdf附件不怕
  • 2025上海半马鸣枪,多个“首次”冲击一城双白金
  • 海南热带雨林国家公园核心保护区一水电站设施将拆除,曾被中央环保督察通报
  • 美国防部宣布整合驻叙美军部队,将减少至不足千人
  • 中华民族共同体体验馆第二期在北京开展,上海体验区展现人民城市与民族团结交融之美
  • “85后”雷海军已任新疆维吾尔自治区统计局局长
  • 全球建筑瞭望|与自然共呼吸的溪谷石舍与海边公共空间