算法日常・每日刷题--<链表>3
LCR 026. 重排链表 - 力扣LeetCodeLCR 026. 重排链表 - 给定一个单链表 L 的头节点 head 单链表 L 表示为 L0 → L1 → … → Ln-1 → Ln 请将其重新排列后变为L0 → Ln → L1 → Ln-1 → L2 → Ln-2 → …不能只是单纯的改变节点内部的值而是需要实际的进行节点交换。 示例 1[https://pic.leetcode.cn/1626420311-PkUiGI-image.png]输入: head [1,2,3,4]输出: [1,4,2,3]示例 2[https://pic.leetcode.cn/1626420320-YUiulT-image.png]输入: head [1,2,3,4,5]输出: [1,5,2,4,3] 提示 * 链表的长度范围为 [1, 5 * 104] * 1 node.val 1000 注意本题与主站 143 题相同https://leetcode.cn/problems/reorder-list/ [https://leetcode.cn/problems/reorder-list/]https://leetcode.cn/problems/LGjMqU/description/题目描述给定单链表头节点head原始链表限制不能修改节点内数值必须调整节点指针。示例 输入链表1 → 2 → 3 → 4输出链表1 → 4 → 2 → 3解法快慢指针找到链表中点快指针一次走 2 步慢指针一次走 1 步循环结束后慢指针指向链表中点。 把链表切分成前后两半 前半段L0 → L1 → …后半段Lmid → … → Ln反转后半段链表后半段反转之后顺序变为Ln → Ln-1 → … → Lmid交替合并两个链表依次从前半段、反转后的后半段取节点拼接完成重排。/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(x), next(next) {} * }; */ class Solution { public: void reorderList(ListNode* head) { if(!head || !head-next) return; // 1.快慢指针找中点 ListNode *slow head, *fast head; while(fast-next fast-next-next){ slow slow-next; fast fast-next-next; } // 分割前后两段 ListNode* mid slow-next; slow-next nullptr; // 2.反转后半段链表 ListNode* prev nullptr; ListNode* cur mid; while(cur){ ListNode* nxt cur-next; cur-next prev; prev cur; cur nxt; } ListNode* rHalf prev; // 反转后的后半段头节点 // 3.交替合并两个链表 ListNode* p1 head; ListNode* p2 rHalf; while(p2){ ListNode* n1 p1-next; ListNode* n2 p2-next; p1-next p2; p2-next n1; p1 n1; p2 n2; } } };

相关新闻

hermes 外部记忆openviking服务端切换为阿里云百炼模型

hermes 外部记忆openviking服务端切换为阿里云百炼模型

环境 Win11,WSL2,Ubuntu24.04 一、相关文档 记忆提供程序 Memory Providers openviking简介 openviking快速开始 在线服务 OpenViking Service(火山引擎云) 产品介绍 二、切换vlm模型 VLM(视觉语言模型&…

2026/7/26 4:40:57 阅读更多 →
Linux sed d命令详解:正则表达式删除与自动化文本处理实战

Linux sed d命令详解:正则表达式删除与自动化文本处理实战

在运维和开发工作中,文本处理是绕不开的日常任务。无论是修改配置文件、批量替换日志内容,还是自动化处理数据文件,传统的手工编辑方式不仅效率低下,还容易出错。Linux 下的sed命令正是解决这类问题的利器,特别是其中的…

2026/7/26 4:40:57 阅读更多 →
深入解析TI WiLink 8.0蓝牙模块的HCI VS命令:从射频校准到音频配置

深入解析TI WiLink 8.0蓝牙模块的HCI VS命令:从射频校准到音频配置

1. 项目概述与HCI VS命令核心价值在嵌入式蓝牙开发领域,尤其是涉及德州仪器(TI)WiLink™ 8.0这类高度集成的无线通信模块时,直接与蓝牙控制器硬件对话的能力至关重要。主机控制器接口(HCI)协议栈中的标准命…

2026/7/26 4:40:57 阅读更多 →

最新新闻

python theano Python Theano已死?别慌,它还是深度学习原理的活教材

python theano Python Theano已死?别慌,它还是深度学习原理的活教材

这是一个库, 该库用于定义数学表达式, 此数学表达式涉及多维数组, 它能对其优化, 还能进行评估, 它特别适用于大规模数值计算任务, 像深度学习模型这样的任务。不过要注意一件事, 该项目在2017年的时候停止了主要的开发工作, 即便这样, 它仍旧能够当作一个学习工具, 借此去理解…

2026/7/26 4:50:01 阅读更多 →
Python入门经典PDF白学了?程序一关数据全没,这招让你彻底告别临时工

Python入门经典PDF白学了?程序一关数据全没,这招让你彻底告别临时工

往前我们所写各项代码对应数据, 均存在一个致使短处: 程序一旦关闭, 数据便全然消逝。作为临时内存数据存在的, 有变量里的数据, 还有列表里的数据, 更有字典里的数据, 一旦断电, 或者关闭程序, 这些数据就会被清空。若想让数据实现永久保存, 将日志进行记录, 把账号密码予以保…

2026/7/26 4:50:01 阅读更多 →
Python入门PDF在手,零基础也能秒变编程高手

Python入门PDF在手,零基础也能秒变编程高手

你提供的内容存在信息错误, 开头说的是“本书”, 后面突然说编程语言等内容, 逻辑混乱。以下是纠正错误后按照要求改写: 语言的这本图书是在国内首本讲述的, 它像一种编程语言那样面向对象, 功能极为强大, 能用于编写独立程序、复杂应用的原型以及快速脚本, 作为一款开源软件, …

2026/7/26 4:50:01 阅读更多 →
GPT-6模型验证指南:从环境配置到批量部署的完整流程

GPT-6模型验证指南:从环境配置到批量部署的完整流程

这类消息一出来,最该先搞清楚的不是功能有多强,而是它到底能不能在普通环境里稳定跑起来,以及我们作为开发者能怎么上手验证。我一般会先看几个关键点:它是以什么形式出现的?是完整的模型权重,还是一个接口…

2026/7/26 4:50:01 阅读更多 →
MCASP传输模式深度解析:从突发、TDM到DIT的配置与实战

MCASP传输模式深度解析:从突发、TDM到DIT的配置与实战

1. MCASP传输模式:从硬件接口到数据流的全景解析在嵌入式音频、通信乃至工业控制领域,数字串行接口的设计往往是系统稳定性的基石。多通道音频串行端口,也就是我们常说的MCASP,远不止是一个简单的“音频”外设。它本质上是一个高度…

2026/7/26 4:50:01 阅读更多 →
Kimi-k3创意写作能力深度解析:从模型对比到实战应用

Kimi-k3创意写作能力深度解析:从模型对比到实战应用

这次我们来看一个很有意思的AI模型对比测试——Kimi-k3在情商测试中惜败,但在创意写作方面却碾压了所有模型。这个结果揭示了不同AI模型在特定任务上的专长差异,对于需要根据具体场景选择合适模型的开发者来说很有参考价值。从测试结果来看,K…

2026/7/26 4:49:01 阅读更多 →

日新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/26 0:00:31 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/26 0:00:31 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/26 0:00:31 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/26 0:00:31 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/26 0:00:31 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/26 0:00:31 阅读更多 →

月新闻