news 2026/8/25 7:45:34

链表题--01----K 个一组翻转链表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
链表题--01----K 个一组翻转链表

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • K 个一组翻转链表
    • 题目:
    • 分析:
    • 数K个数,返回
    • 链表反转
    • 总逻辑
  • 代码

K 个一组翻转链表

https://leetcode.com/problems/reverse-nodes-in-k-group/

题目:




分析:



数K个数,返回

publicstaticListNodegetKGroupEnd(ListNodestart,intk){while(--k!=0&&start!=null){start=start.next;}returnstart;}

链表反转

publicstaticvoidreverse(ListNodestart,ListNodeend){end=end.next;ListNodepre=null;ListNodecur=start;ListNodenext=null;while(cur!=end){next=cur.next;cur.next=pre;pre=cur;cur=next;}start.next=end;}

总逻辑

代码

// 测试链接:https://leetcode.com/problems/reverse-nodes-in-k-group/publicclassCode04_ReverseNodesInKGroup{// 不要提交这个类publicstaticclassListNode{publicintval;publicListNodenext;}publicstaticListNodereverseKGroup(ListNodehead,intk){ListNodestart=head;ListNodeend=getKGroupEnd(start,k);if(end==null){returnhead;}// 第一组凑齐了!head=end;reverse(start,end);// 上一组的结尾节点ListNodelastEnd=start;while(lastEnd.next!=null){start=lastEnd.next;end=getKGroupEnd(start,k);if(end==null){returnhead;}reverse(start,end);lastEnd.next=end;lastEnd=start;}returnhead;}publicstaticListNodegetKGroupEnd(ListNodestart,intk){while(--k!=0&&start!=null){start=start.next;}returnstart;}publicstaticvoidreverse(ListNodestart,ListNodeend){end=end.next;ListNodepre=null;ListNodecur=start;ListNodenext=null;while(cur!=end){next=cur.next;cur.next=pre;pre=cur;cur=next;}start.next=end;}}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/25 7:42:58

MATLAB数据拟合实战:从cftool交互到编程实现与光谱分析

1. 从一次失败的预测说起:为什么我们需要数据拟合?几年前,我接手了一个电机温升预测的项目。当时手头有一堆在不同负载、不同环境温度下测得的电机外壳温度数据,散点图看起来乱糟糟的。我的第一反应是,找个看起来“顺眼…

作者头像 李华
网站建设 2026/8/25 7:41:59

mysql的自我总结

什么Mysql的底层索引要用BTree 那就要先说二叉树 : 二叉树以第一个插入的数据作为根节点,假设特定情况他就变成了一个单项链表,查询效率极慢。 其次就是平衡二叉树 平衡二叉树在数据量大的情况下,树会很高,那么我们的检索效率还是不高。 然后…

作者头像 李华
网站建设 2026/8/25 7:40:48

Samba服务器搭建:基于用户认证的Linux文件共享配置详解

1. 项目概述:为什么需要带认证的Samba共享?在任何一个稍具规模的办公环境或家庭网络中,文件共享都是刚需。Windows自带的“网络邻居”虽然方便,但它的“所有人”或“特定用户”共享模式,在权限控制上总是显得有些力不从…

作者头像 李华
网站建设 2026/8/25 7:37:45

Python MIDI编程实战:用mido库解析、生成与处理数字乐谱

1. MIDI文件基础:从数字乐谱到程序化创作如果你玩过音乐制作,或者对计算机如何生成音乐感到好奇,那你一定绕不开MIDI。它不像MP3或WAV那样直接记录声音的波形,更像是一份极其详尽的“数字乐谱”。这份乐谱里不包含任何实际的声音&…

作者头像 李华
网站建设 2026/8/25 7:37:41

基于QClaw构建可备份的本地优先隐私树洞应用

1. 项目概述:为什么我们需要一个“可备份的心里树洞”?在数字生活几乎占据我们所有注意力的今天,我们每天产生大量的情绪碎片、零散想法和私密记录。这些内容散落在手机备忘录、社交媒体私密账号、加密日记App,甚至是一张张随手拍…

作者头像 李华
网站建设 2026/8/25 7:37:34

数据中心基础设施运维:从救火到交响乐,构建高可用体系

1. 从“救火队”到“交响乐团”:重新定义数据中心基础设施运维如果你在数据中心行业待过几年,大概率听过或者亲身经历过这样的场景:凌晨三点,手机铃声大作,监控系统报警“机房温升异常”。你从床上弹起来,一…

作者头像 李华