DeepSeek    LeetCode 24.两两交换链表中的节点 Python3实现
以下是 LeetCode 24 题「两两交换链表中的节点」的 Python3 实现使用迭代方法通过操作指针来交换相邻节点。# Definition for singly-linked list.classListNode:def__init__(self,val0,nextNone):self.valval self.nextnextclassSolution:defswapPairs(self,head:ListNode)-ListNode:# 创建哑节点简化头节点的处理dummyListNode(0)dummy.nexthead prevdummy# 当还剩下至少两个节点时进行交换whileprev.nextandprev.next.next:# 确定要交换的两个节点firstprev.nextsecondfirst.next# 交换操作first.nextsecond.nextsecond.nextfirst prev.nextsecond# 移动 prev 到下一组的前一个位置prevfirstreturndummy.next思路说明· 使用哑节点 dummy使得头节点也可以统一处理避免特殊判断。· 用 prev 指向当前要交换的一组两个节点的前一个节点。· 每次循环中当 prev 后面至少有两个节点时first 指向第一个节点second 指向第二个节点。交换first.next 先指向 second.next然后 second.next 指向 first最后 prev.next 指向 second完成两个节点的交换。将 prev 移动为 first即下一组的前一个节点。· 最终返回 dummy.next 作为新的头节点。复杂度分析· 时间复杂度O(n)其中 n 是链表节点的数量。需要遍历链表一次。· 空间复杂度O(1)只使用了常数级别的额外空间。

相关新闻

滴滴研发岗笔试复盘:题型、编程题策略与避坑指南

滴滴研发岗笔试复盘:题型、编程题策略与避坑指南

在秋招这场持久战里,笔试刷人往往是第一道大坎。滴滴研发岗的笔试我完整走了一遍,从收到邮件到交卷,中间有不少值得复盘的地方。这篇文章不是什么官方解析,就是一个过来人把题目类型、解题思路、环境配置、踩坑点都摊开来讲&#…

2026/9/2 8:16:10 阅读更多 →
Cesium+WebGPU:从零实现三维降雨汇流模拟

Cesium+WebGPU:从零实现三维降雨汇流模拟

最近我用 Cesium WebGPU 在浏览器里做了一个降雨汇流模拟。核心是让雨滴落到三维地形上之后,不再只是“穿模掉落”,而是沿坡度继续流动,最后在低洼处汇成一条条水流路径。这类模拟在水灾害预警、内涝分析、水利工程展示和城市排水规划里都有…

2026/9/1 5:38:31 阅读更多 →
微雪RP2350-USB-CM开发板:双Type-C轻松玩转USB调试与主机模式

微雪RP2350-USB-CM开发板:双Type-C轻松玩转USB调试与主机模式

微雪 RP2350-USB-CM 这块板子,从名字上看就很直白:主控是树莓派第二代自研微控制器 RP2350,接口只保留了双 Type-C,一个公头、一个母座。外形非常接近“带 USB 口的迷你开发棒”,整体设计就是奔着 USB 外设调试和嵌入式…

2026/9/1 5:38:31 阅读更多 →

最新新闻

Rust+Slint 实现动态轮播图源码分享,支持动态删除、添加

Rust+Slint 实现动态轮播图源码分享,支持动态删除、添加

RustSlint 实现动态轮播图源码分享,支持动态删除、添加一、效果展示二、源码分享1、工程结构2、main.rs3、build.rs4、main.slint5、Cargo.toml6、完整工程下载三、实现原理1、数据模型与状态管理2、 视觉布局与动画位置与层级计算视觉变换3、用户交互4、自动轮播机…

2026/9/2 8:16:41 阅读更多 →
零部件耐久测试解决方案:从设计验证到量产品控,全周期守护产品可靠性

零部件耐久测试解决方案:从设计验证到量产品控,全周期守护产品可靠性

产品的使用寿命有多长?在长期运行中是否会暴露设计缺陷?这是每一位研发工程师在产品开发阶段都必须回答的核心命题。耐久测试,正是验证产品在设计寿命内能否稳定运行的关键环节。它通过模拟产品在标称工况乃至超标称严苛工况下的操作循环&…

2026/9/2 8:16:41 阅读更多 →
工控存储为什么越来越依赖国产 DRAM?三大核心原因

工控存储为什么越来越依赖国产 DRAM?三大核心原因

工控设备不同于消费电子产品,设备生命周期动辄 5‑10 年,对存储的核心诉求从来不是极致性能,而是长期供货、运行稳定、供应链可控。过去国内工控市场 DRAM 颗粒高度依赖海外原厂,而近几年,越来越多工控厂商开始转向国产…

2026/9/2 8:16:41 阅读更多 →
从高空抛物数据集实战YOLOv8:小样本目标检测全流程解析

从高空抛物数据集实战YOLOv8:小样本目标检测全流程解析

简介:本资源是面向计算机视觉初学者与安防算法研究者的高空抛物检测专项数据集,聚焦于城市公共安全场景下的目标检测模型训练与验证。资源包含从6段真实抛物视频中精心截取的259张图像,全部经LabelImg人工标注,同时提供VOC&#x…

2026/9/2 8:16:41 阅读更多 →
基于MATLAB App Designer的条形码识别GUI工具开发实战

基于MATLAB App Designer的条形码识别GUI工具开发实战

简介:本资源是一套基于MATLAB开发的条形码识别系统GUI实现,面向本科毕业设计、人工智能课程实践及图像识别入门学习者,解决真实场景中常见一维条形码(如Code39、Code128、EAN13)的自动识别与可视化交互问题。压缩包共3…

2026/9/2 8:16:41 阅读更多 →
你写的PyTorch代码为什么能“边写边跑”?读懂这3个核心设计,才算真正掌握动态图

你写的PyTorch代码为什么能“边写边跑”?读懂这3个核心设计,才算真正掌握动态图

你写的PyTorch代码为什么能“边写边跑”?读懂这3个核心设计,才算真正掌握动态图一句话先睹为快:PyTorch不是又一个深度学习框架,而是一场以“Python优先、动态执行”为核心的建模范式革命——以Tensor为数据载体、以Autograd为自动…

2026/9/2 8:15:40 阅读更多 →

日新闻

QEMU为什么能模拟不同CPU?从ISA、CPU模型到指令翻译讲起

QEMU为什么能模拟不同CPU?从ISA、CPU模型到指令翻译讲起

1. 引言:一个软件为何能“伪装”成不同CPUQEMU 是一款广为人知的开源模拟器,它既能在一台 x86 电脑上运行 ARM 系统,也能在 ARM 开发板上启动 x86 的 Linux 发行版。很多人第一次接触 QEMU 时都会好奇:一个纯软件程序,…

2026/9/2 0:00:30 阅读更多 →
单片机计算机毕设之基于 STM32 或 51 单片机的感知式智能垃圾桶硬件控制系统设计 基于 STM32 或 51 单片机的安全防护型智能垃圾桶装置设计(025005)

单片机计算机毕设之基于 STM32 或 51 单片机的感知式智能垃圾桶硬件控制系统设计 基于 STM32 或 51 单片机的安全防护型智能垃圾桶装置设计(025005)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/9/2 0:00:30 阅读更多 →
单片机计算机毕设之基于 ESP8266 的智能垃圾分类桶 APP 监控系统设计与实现 基于单片机的超声波满溢检测垃圾分类装置设计(025105)

单片机计算机毕设之基于 ESP8266 的智能垃圾分类桶 APP 监控系统设计与实现 基于单片机的超声波满溢检测垃圾分类装置设计(025105)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/9/2 0:00:30 阅读更多 →

周新闻

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

每年校招季我都会接触不少准备数据库方向笔试的同学,看到最多的状态就是:简历上写着“熟悉 MySQL”“了解索引优化”,一碰到数据库管理工程师的笔试卷,却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

2026/9/1 19:44:48 阅读更多 →
数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

1. 这不是“背公式”的事:时间参数到底在约束什么你翻过数字电路教材,一定见过这两个词:建立时间(Setup Time)和保持时间(Hold Time)。它们常被并列写在触发器(Flip-Flop&#xff09…

2026/9/1 18:13:19 阅读更多 →
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

1. 项目缘起:从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目,我至今记忆犹新。它没有直接给出一个花哨的名字,而是用“超声波测距机”这个朴实无华的功能描述,精准地勾勒出了考核的核心。对于当时备赛的我而言…

2026/9/2 1:01:37 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/2 1:06:24 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/2 1:01:13 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/2 2:01:56 阅读更多 →