尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

[豪の算法奇妙冒险] 代码随想录算法训练营第三天 | 203-移除链表元素、707-设计链表、206-反转链表

[豪の算法奇妙冒险] 代码随想录算法训练营第三天 | 203-移除链表元素、707-设计链表、206-反转链表
📅 发布时间:2026/6/19 3:11:59
LeetCode203 移除链表元素、LeetCode707 设计链表、LeetCode206 反转链表

代码随想录算法训练营第三天 | 203-移除链表元素、707-设计链表、206-反转链表


LeetCode203 移除链表元素

题目链接:https://leetcode.cn/problems/remove-linked-list-elements/description/

文章讲解:https://programmercarl.com/0203.移除链表元素.html

视频讲解:https://www.bilibili.com/video/BV18B4y1s7R9/?vd_source=b989f2b109eb3b17e8178154a7de7a51

​ 引入虚拟头节点,这样可以使用一套规则去删除链表中节点,处理起来更加方便

​ 如果是C++还得额外考虑内存回收,但我用的是Java,虚拟机自动回收内存hh

image-20251121152717416

class Solution {public ListNode removeElements(ListNode head, int val) {ListNode dummyHead = new ListNode(0,head);ListNode p = dummyHead;while(p.next != null){if(p.next.val == val){p.next = p.next.next;}else{p = p.next;}}return dummyHead.next;}
}

LeetCode707 设计链表

题目链接:https://leetcode.cn/problems/design-linked-list/description/

文章讲解:https://programmercarl.com/0707.设计链表.html

视频讲解:https://www.bilibili.com/video/BV1FU4y1X7WD/?vd_source=b989f2b109eb3b17e8178154a7de7a51

​ 做这种涉及到指针的题目,要时刻明确当前状态下指针到了什么位置,注意细节和合法范围条件,小心在一些细小的地方出错(比如>和>=)

image-20251121185130004

class MyLinkedList {class Node{int val;Node next;public Node(){}public Node(int val, Node next){this.val = val;this.next = next;}}Node dummyHead;int size;public MyLinkedList() {size = 0;dummyHead = new Node(0, null);}public int get(int index) {if(index < 0 || index >= size){return -1;}Node cur = dummyHead;for(int i = 0;i <= index;i++){cur = cur.next;}return cur.val;}public void addAtHead(int val) {Node newNode = new Node(val, dummyHead.next);dummyHead.next = newNode;size++;}public void addAtTail(int val) {Node cur = dummyHead;while(cur.next != null){cur = cur.next;}Node newNode = new Node(val, null);cur.next = newNode;size++;}public void addAtIndex(int index, int val) {if(index < 0 || index > size){return;}Node cur = dummyHead;Node pre = null;for(int i = 0;i <= index;i++){pre = cur;cur = cur.next;}Node newNode = new Node(val, cur);pre.next = newNode;size++;}public void deleteAtIndex(int index) {if(index < 0 || index >= size){return;}Node cur = dummyHead;Node pre = null;for(int i = 0;i <= index;i++){pre = cur;cur = cur.next;}pre.next = cur.next;size--;}
}

LeetCode206 反转链表

题目链接:https://leetcode.cn/problems/reverse-linked-list/description/

文章讲解:https://programmercarl.com/0206.翻转链表.html

视频讲解:https://www.bilibili.com/video/BV1nB4y1i7eL/?vd_source=b989f2b109eb3b17e8178154a7de7a51

​ 采用双指针的思路,cur指向当前节点,pre指向上一个节点,temp指向下一个节点,仔细画画图分析遍历过程,还是很清晰的

image-20251121171812263

class Solution {public ListNode reverseList(ListNode head) {ListNode cur = head;ListNode pre = null;while(cur != null){ListNode temp = cur.next;cur.next = pre;pre = cur;cur = temp;}return pre;}
}

​ 依照双指针解法的思路,还可以使用递归解决此问题:

image-20251121172636025

class Solution {public ListNode reverse(ListNode cur, ListNode pre){if(cur == null){return pre;}ListNode temp = cur.next;cur.next = pre;return reverse(temp, cur);}public ListNode reverseList(ListNode head) {return reverse(head, null);}
}

相关新闻

  • 2025年11月北京/东城区/西城区/朝阳区/海淀区/丰台区/石景山区遗产继承律师,遗产咨询律所Top10专业推荐排行权威榜单
  • hspice 写了一个振幅可变的电压源,并且可以进行直流偏执
  • 实用指南:【设计模式】适配器模式(Adapter)

最新新闻

  • 2026最新领英账户解封全攻略指南:从领英封禁类型到高效申诉恢复实操
  • CMOS LDO选型与应用实战:TC1223/TC1224低功耗电源设计指南
  • 如何在Chrome浏览器中快速生成和识别二维码:终极二维码处理技巧指南
  • 风力发电机运行数据的分析与应用技巧
  • 24CW系列EEPROM软件写保护与硬件地址配置实战指南
  • 深入解析T1023RDB开发板:从Power Architecture核心到高速接口的硬件设计实战

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号