025. K 个一组翻转链表,2 张图,2 段代码,彻底掌握
鲁迅说,LeetCode 官方这道题的题目是 K 个一组翻转链表,怎么看怎么别扭,我觉得应该是 K 个一组,翻转链表 或者 翻转链表 K 个一组。缺少断句,不知道是不是我太敏感了(😂)。
题意
给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。
k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那请将最后剩余的节点保持原有顺序。
注:你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。
难度
困难
示例

输入:head = [1,2,3,4,5], k = 2
输出:[2,1,4,3,5]
k=2,反转的是
- 1,2 → 2,1
- 3,4 → 4,3
- 5(只有一位了,不是 k 的整数倍,保留原样)

输入:head = [1,2,3,4,5], k = 3
输出:[3,2,1,4,5]
k=3,反转的是
- 1,2,3 → 3,2,1
- 4,5(只有 2 位了,不是 k 的整数倍,保留原样)
分析
由于我们刚刚解完 024.两两交换链表中的节点 这道题,所以面对本题时,虽然是 hard 难度,但并不会被它吓到。
比如说,当 k=2 时,其实就是两两交换链表中的节点,只不过,这道题,可能是两两交换,也可能是三三交换,也可能是四四交换,也可能是五五交换……
两两交换、三三交换、四四交换……这些其实就是翻转链表:给你一个有 k 个节点的链表,翻转它。

OK,我们试着来解这道题。
public ListNode reverseList(ListNode head) {
ListNode p...
已加入星球,可直接知识星球授权登录
二哥编程星球目前包含:
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
企业级Agent工作流编排项目PaiFlow
Vibe Coding版本的PaiAgent
派聪明RAG AI知识库Java版本+Go版本
微服务 PmHub、技术派、MYDB
求职派JobClaw(OpenClaw/Hermes架构
PaiCLI(类似Claude Code的Agent
派简历(代码已完成)
等实战项目。
1. 微信扫右侧的优惠券加入知识星球
2. 解锁星球的实战项目教程和源码: 项目源码+教程获取
回复