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

代码随想录算法训练营第四天 | leetcode 24

代码随想录算法训练营第四天 | leetcode 24
📅 发布时间:2026/6/19 23:47:58
  • 两两交换链表中的节点
    注意:交换两个节点的步骤,采用虚拟节点会更加方便,每次交换的步骤是相同的所以可以使用递归做出来(二刷再做吧),然后就是注意指针是否为空,普通做法时可以将保存交换节点的下一个接地点,替换成前一个节点直接连到下一个节点的下一个节点,这在代码随想录里有(二刷)
    代码如下(感觉有点繁琐,二刷再优化吧):class Solution { public ListNode swapPairs(ListNode head) { if(head==null||head.next==null){ return head; } ListNode Vnode = new ListNode(-1);//虚拟头节点方便进行交换节点和返回交换后的头节点 Vnode.next = head; ListNode cur = Vnode;//用于交换节点的操作 ListNode p = head;//前一个节点 ListNode q = head.next;//相邻节点 while(p!=null&&q!=null){//要交换的两个节点不能有一方为空 ListNode temp = q.next;//保存要交换两个节点的下一个节点 cur.next = q; q.next = p; p.next = temp; cur = p;//移动指针 p = temp; if(temp==null){//判断要交换节点下一个节点是否为空 q=null; }else{//不为空就可以赋值 q=p.next; } } return Vnode.next;//返回交换节点后的头节点 } }
  • 19 删除列表倒数第n个节点
    解答:使用双指针两指针之间相距三个空也就是两个元素,这样当尾指针的下一个节点为null时,头指针的下一个位置就是要删除的元素
    代码如下:class Solution { public ListNode removeNthFromEnd(ListNode head, int n) { ListNode Vnode = new ListNode(-1,head); ListNode cur = Vnode; ListNode p =Vnode; for(int i = 0;i<n;i++){ p = p.next; } while(p.next!=null){ cur = cur.next; p = p.next; } cur.next = cur.next.next; return Vnode.next; } }
  • 面试题 02.07. 链表相交
    做过,思路正确
    注意:提前考虑有一个链表为空链表的情况
  • 142寻找循环列表的相交点
    注意:这道题做过,采用快慢指针,遗忘的是判断出是循环列表后如何找相交点,建议二刷

相关新闻

  • DP tricks
  • OpenCV的一些API的使用
  • 2971:抓住那头牛

最新新闻

  • Git状态可视化:深入解析Nicolas Gallagher dotfiles的bash提示符系统
  • TPM架构探秘(三):从可信根到主动免疫——TPM 2.0架构下的可信平台构建实践
  • 为什么选择vscode-remote-try-node?Node.js开发容器的10大优势与实际应用案例
  • 3大突破性设计重塑抖音内容生态管理体验
  • FaceFusion 3.6.0终极实战:5大策略实现影视级人脸融合效果
  • CANN/asc-devkit:asc_lt_scalar矢量标量比较函数

日新闻

  • 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 号