LeetCode Hard|【25. K 个一组翻转链表】
力扣题目链接
首先我们考虑一种很直观的思路:
- 遍历链表,统计链表长度
- 遍历链表,进行翻转
- 对于每一组长度为 K 的节点,进行翻转
- 如果剩余节点不足 K 个,则不进行翻转
- 连接翻转后的子链表
这里我们用的就是只用 O(1) 额外内存空间的算法
关于如何 k 个节点个数的链表
我认为这里最重要的是链表的翻转,当你知道需要翻转的链表长度的时候,这个方法应该按照固定模版来进行,也就是我们的三指针:
for (int i = 1; i < k; i++) {cur->next = nex->next;nex->next = pre->next;pre->next = nex;nex = cur->next;
}
但是还记得我们之前在做反转链表题目的时候是怎么处理的嘛:
while (cur) {ListNode *nex = cur->next;cur->next = pre;pre = cur;cur = nex;
}
这里简单直观多了,最大的区别是什么呢?
首先,做整表翻转的时候,我们的逻辑非常简单
其次,对于对 k 个节点分组翻转,并且我们还必须做到对剩余的 k 个节点不进行翻转,势必有这样形式的代码:
while (cout >= k) {...for (...) {...}...count -= k;
}
CPP总体代码:
class Solution {
public:ListNode* reverseKGroup(ListNode* head, int k) {if (!head || k == 1) return head;ListNode *dummyHead = new ListNode();dummyHead->next = head;ListNode *cur = dummyHead, *pre = dummyHead, *nex = dummyHead;int count = 0;cur = head;while (cur) {cur = cur->next;count++;}while (count >= k) {cur = pre->next;nex = cur->next;for (int i = 1; i < k; i++) {cur->next = nex->next;nex->next = pre->next;pre->next = nex;nex = cur->next;}pre = cur;count -= k;}return dummyHead->next;}
};
相关文章:
LeetCode Hard|【25. K 个一组翻转链表】
力扣题目链接 首先我们考虑一种很直观的思路: 遍历链表,统计链表长度遍历链表,进行翻转 对于每一组长度为 K 的节点,进行翻转如果剩余节点不足 K 个,则不进行翻转 连接翻转后的子链表 这里我们用的就是只用 O(1) 额外内…...
python爬虫预备知识三-多进程
python实现多进程的方法:fork、multiprocessing模块创建多进程。 os.fork方法 os.fork方法只适合于unix/linux系统,不支持windows系统。 fork方法调用一次会返回两次,原因在于操作系统将当前进程(父进程)复制出一份…...
【zlm】针对单个设备的音频的编码的设置
目录 结论 原理 测试 结论 为了防止zlm音频配置里设置成opus优先,在国标推流时,调用push时,默认加上codecpcma 如下 https://10.60.100.196:10443/index/api/webrtc?applive&streamtest&typepush&codecpcma 原理 测试 …...
文案人的梦工场,网易入职指南!
网易云对于咱们一些有点文艺的文案策划来说,简直就是梦中情司。 在这里工作锻炼机会很多,也很开拓眼界,能获得相当于在别处3倍能力的成长速度,福利待遇也是很好的。 要进入网易云音乐做文案策划,你可以按照以下步骤进…...
做一个能和你互动玩耍的智能机器人之七-接入对话和大模型
接入科大迅飞的语音识别: private void printResult(RecognizerResult results) {String text JsonParser2.parseIatResult(results.getResultString());String sn null;// 读取json结果中的sn字段try {JSONObject resultJson new JSONObject(results.getResult…...
阿里巴巴商家联系方式采集软件使用教程
以下是一个批量访问阿里巴巴商家店铺的Python代码示例: import requestsdef visit_shop(shop_url):try:response requests.get(shop_url)if response.status_code 200:print(f"成功访问店铺:{shop_url}")else:print(f"访问店铺失败&am…...
Golang | Leetcode Golang题解之第326题3的幂
题目: 题解: func isPowerOfThree(n int) bool {return n > 0 && 1162261467%n 0 }...
人大金仓(Kingbase)数据库高阶函数详解
人大金仓(Kingbase)数据库高阶函数详解 人大金仓(Kingbase)数据库是一款基于 PostgreSQL 的国产关系型数据库(PostgreSQL 高阶函数详解:全面深入的功能与实用示例 ),提供了丰富的高阶函数,以支…...
云原生真机实验
基于Proxmox VE构建中小企业云计算平台 首先Proxmox VE是什么?能用来做什么? Proxmox VE是一个完整的企业虚拟化开源平台。借助内置的 Web 界面,可以在单个解决方案上轻松管理 VM(开虚拟机的) 和容器、软件定义的存储和网络、高可用性群集以…...
【电子电路学习笔记】——模电笔记
关于专栏:本专栏用于分享学习电子电路过程中记录的笔记。模电部分使用的教材是高等教育出版社,华成英主编的《模拟电子技术基础(第六版)》(其他版本的内容差不多,建议使用最新版教材)࿱…...
部署伪分布式 Hadoop集群
部署伪分布式 Hadoop集群 一、JDK安装配置1.1 下载JDK1.2 上传解压1.3 java环境配置 二、伪分布式 Hadoop 安装配置2.1 Hadoop 下载2.2 上传解压2.3 Hadoop 文件目录介绍2.4 Hadoop 配置2.4.1 修改 core-site.xml 配置文件2.4.2 修改 hdfs-site.xml 配置文件2.4.3 修改 hadoop-…...
十九、虚拟机VMware Workstation(CentOSDebian)的安装
目录 🌻🌻 一、安装 VMware Workstation1.1 安装 VMware Workstation1.2 虚拟机上安装 CentOS1.3 虚拟机安装 Debian 二、配置Debian方便第三方工具远程连接2.1 配置debian2.2 安装远程SSH工具并连接 一、安装 VMware Workstation 官网下载 本地资源库…...
理解Android framework之AOSP:从内核到应用层
一、AOSP Android framework确保设备的各个部件和程序顺利协同工作。对于想要全面了解 Android 设备内部工作原理、开发高质量应用、优化设备性能以及充分利用 Android 生态系统潜力的人来说,了解 Android 框架也是必不可少的。它是连接用户、开发者和 Android 平台…...
杂谈c语言——3.内存对齐
先看两个例子: typedef struct S {int a;double b;char c; }S;typedef struct B {int a;char b;double c; }B;int main() {printf("S : %d\n", sizeof(S));printf("B : %d\n", sizeof(B));return 0; } 结果为: S:24; B:16ÿ…...
瑞芯微Android设备指定应用开启性能模式
本文档主要针对特定应用(如 安兔兔)如何进行加速及性能的提升做相关说明。 快速开启方法 开启与关闭 在 device/rockchip/rk3xxx/下配置文件:package_performance.xml,在其中的节点中加入需要使用性能模式的包名:(…...
ASP.NET Core基础 - 简介
目录 一. 简介 A、跨平台性 B、高性能 C、开源性 D、模块化与可扩展性 E、集成现代前端技术 二. ASP.NET 4.x 和 ASP.NET Core 比较 A、架构与平台支持 B、性能 C、开发体验 D、社区支持与生态系统 三. NET 与 .NET Framework 比较 A、概念范围 B、跨平台能力 C…...
Flask+LayUI开发手记(一):LayUI表格的前端数据分页展现
用数据表格table展示系统数据,是LayUI的基本功能,编码十分简单,就是通过table.render()渲染,把属性配置好就OK了,十分方便,功能也十分强大。 不过,在实现时,把table的有个功能却理解…...
Vulnhub靶场DC-9练习
目录 0x00 准备0x01 主机信息收集0x02 站点信息收集0x03 漏洞查找与利用1. 发现SQL注入点2. Sqlmap跑数据3. 文件包含4. SSH爆破端口敲门服务5. 提权(写入/etc/passwd) 0x04 总结 0x00 准备 下载链接:https://download.vulnhub.com/dc/DC-9.z…...
Java对象内存布局和对象头
文章目录 面试题Object object new Object() 谈谈你对这句话的理解? 对象在堆内存中存储布局权威定义(周志明老师JVM第三版)对象在堆内存中的存储布局详解对象头的MarkWord源码对象标记源码 对象内存布局(使用JOL证明)…...
python:基于YOLO框架和遥感图像的目标检测
作者:CSDN _养乐多_ 本文将介绍如何通过YOLO框架和遥感图像进行目标检测的代码。 文章目录 一、数据集下载与格式转换1.1 NWPU VHR-10(73.1 MB)1.2 DIOR(7.06 GB)1.3 配置data.yaml 二、训练三、训练结果 一、数据集…...
从付费软件到自主开发:我用AI和FFmpeg实现了一个录屏工具富
我为什么会发出这个疑问呢?是因为我研究Web开发中的一个问题时,HTTP请求体在 Filter(过滤器)处被读取了之后,在 Controller(控制层)就读不到值了,使用 RequestBody 的时候。 无论是字…...
# MyBatis Mapper文件不想手动注册?启动时自动扫描conf目录,动态拼配置
MyBatis Mapper文件不想手动注册?启动时自动扫描conf目录,动态拼配置 非科班野生程序员,深耕政务信息化20年。从VC到PB再到Java,自研框架browise也打磨了十几年。最近整理框架代码,发现不少有趣的决策,写出…...
3种方法实现Figma设计到JSON数据的无缝转换:从痛点到价值的完整指南
3种方法实现Figma设计到JSON数据的无缝转换:从痛点到价值的完整指南 【免费下载链接】figma-to-json 项目地址: https://gitcode.com/gh_mirrors/fi/figma-to-json Figma-to-json是一个开源工具集,专注于实现Figma设计文件与JSON格式的双向转换&…...
Swoole vs RoadRunner vs PHP-PM:异步I/O配置参数对比表(含内存泄漏率、上下文切换耗时、FD复用率实测)
第一章:Swoole vs RoadRunner vs PHP-PM 异步I/O配置全景概览现代PHP高性能服务化方案中,Swoole、RoadRunner 和 PHP-PM 均通过常驻内存与异步I/O机制突破传统PHP-FPM的阻塞模型,但其实现路径、依赖模型与配置范式存在本质差异。三者均不依赖…...
让老式PL2303芯片在Windows 10/11上重获新生:实用兼容驱动方案
让老式PL2303芯片在Windows 10/11上重获新生:实用兼容驱动方案 【免费下载链接】pl2303-win10 Windows 10 driver for end-of-life PL-2303 chipsets. 项目地址: https://gitcode.com/gh_mirrors/pl/pl2303-win10 前几天在整理工作室时,我发现了一…...
Python实战:四种图像平滑技术对比与代码实现
1. 图像平滑技术入门指南 第一次接触图像处理时,我被"椒盐噪声"这个词逗笑了 - 想象一下炒菜时不小心把盐和胡椒撒在照片上的场景。实际上,这种黑白杂点的专业术语就叫椒盐噪声,是图像处理中最常见的干扰类型之一。作为计算机视觉的…...
PHP网关偶发502/504?揭秘OpenResty+PHP-FPM在严苛工控环境下的8大超时耦合陷阱(附压测对比图表)
第一章:工业PHP网关的典型故障现象与诊断起点工业PHP网关作为边缘计算与传统OT系统间的关键协议转换节点,其运行稳定性直接影响产线数据采集的连续性。常见故障并非源于语法错误,而是由资源约束、时序敏感性及协议适配偏差引发的隐性异常。典…...
贵州公共活动策划公司名录
2026年想在贵州办一场出圈的公共活动?从企业年会到文化展览,从体育赛事到艺术节庆,选对策划公司是关键!但贵州公共活动策划公司鱼龙混杂,如何避开“低价陷阱”“执行脱节”等坑?本文结合本地市场真实案例&a…...
[具身智能-310]:大模型的神经网络的输入是词向量序列,还是Token序列?
这是一个非常精准的技术问题。要准确回答这个问题,我们需要区分“数据形式”和“计算实体”。简单来说:进入神经网络第一层进行数学计算的,绝对是“词向量序列”;但承载这些向量的“容器”和顺序,是由“Token序列”决定…...
EcomGPT-7B电商大模型API接口安全设计
EcomGPT-7B电商大模型API接口安全设计 1. 引言 电商平台每天处理着海量的用户查询、商品信息和交易数据,这些数据不仅包含商业机密,还涉及大量用户隐私信息。想象一下,一个未经保护的API接口就像是一家没有门锁的金店,任何人都可…...
