题目

给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。

k 是一个正整数,它的值小于或等于链表的长度。

如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。

示例:

给你这个链表:1->2->3->4->5

当 k = 2 时,应当返回: 2->1->4->3->5

当 k = 3 时,应当返回: 3->2->1->4->5

解法 递归

思路与前一题基本一致。

class Solution {
public:ListNode* reverseKGroup(ListNode* head, int k) {int d = 0;auto node = head;while (node != NULL) {if (++d >= k) break;node = node->next;}if (d < k) return head;ListNode* prev = NULL;ListNode* curr = head;for (int i = 0; i < k; ++i) {auto node = curr->next;curr->next = prev;prev = curr;curr = node;}head->next = reverseKGroup(curr, k);return prev;}
};

leetcode 25. K个一组反转链表相关推荐

  1. 28. Leetcode 25. K 个一组翻转链表 (链表-反转链表)

    给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表. k 是一个正整数,它的值小于或等于链表的长度. 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序.进阶:你可以设计一 ...

  2. LeetCode 25. K 个一组翻转链表

    https://leetcode-cn.com/problems/reverse-nodes-in-k-group/ 难度:困难   给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表. ...

  3. Leetcode 25.K个一组翻转链表

    难度:困难 频率:185 **题目:**给你一个链表,每K个节点一组进行翻转,清你返回翻转后的链表. K是一个正整数,它的值小于或等于链表的长度. 如果节点总数不是K的整数倍,那么请将最后胜于的节点保 ...

  4. Leetcode 25 K个一组翻转链表 (每日一题 20210719)

    给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表.k 是一个正整数,它的值小于或等于链表的长度.如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序.进阶:你可以设计一个只 ...

  5. LeetCode 25 K个一组翻转链表

    https://leetcode-cn.com/problems/reverse-nodes-in-k-group/ 解决方案 class Solution {public ListNode reve ...

  6. [Leedcode][JAVA][第25题][K个一组反转链表][链表][递归]

    [问题描述][第25题][K个一组反转链表][困难] 时间复杂度:O(N^2) 空间复杂度:O(1) ```java 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表.k 是一个正整数, ...

  7. Leetcode-递归/反转链表模板-25. K 个一组翻转链表

    题目25. K 个一组翻转链表: 题解: 模拟 以K个为一组,进行常规反转,重点是要保留反转前的头节点,以及第K+1个节点,将其反转之后连接起来 代码: /*** Definition for sin ...

  8. 25. K 个一组翻转链表

    25. K 个一组翻转链表 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表. k 是一个正整数,它的值小于或等于链表的长度. 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持 ...

  9. 【每日算法/刷穿 LeetCode】25. K 个一组翻转链表(困难)

    题目描述 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表. k 是一个正整数,它的值小于或等于链表的长度. 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序. 示例: ...

最新文章

  1. js同时打开两个连接
  2. IndexError: invalid index of a 0-dim tensor. Use tensor.item() to convert a 0-dim tensor to a Python
  3. Citus数据分片分布研究(一 在工作节点直接操作表)
  4. python xml etree word_使用python格式化插入的元素xml.etree模块,包括新行
  5. 51NOD-1028 大数乘法V2【大数】
  6. postgis java_Postgresql结合postgis使用java的JDBC连接
  7. 批量生成测试非重复命名的图片数据
  8. python控制灯开关_通过树莓派控制电灯开关
  9. 容迟网络中的路由算法笔记(二)
  10. MySQL 之union all 与 order by 同时出现问题
  11. YOLOX论文逐句翻译
  12. 好的计算机书籍 http://outmyth.blogdriver.com/outmyth/1122212.html
  13. Gtk-ERROR **: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not suppor
  14. python出行轨迹记录软件_看看过去跑过哪些地方,用Python和高德API绘制跑步轨迹...
  15. 史上最全最详细多种手机主流操作系统详解
  16. 13项目管理--相关方管理
  17. 解放双手,Windows Admin Center简化服务器管理
  18. ISA2006禁止BT下载方法
  19. IBM Installation Manager安装的几种安装方式
  20. 华大HC32F460芯片

热门文章

  1. 比饿汉单例模式和懒汉单例模式更好的静态内部类单例模式
  2. 服务器硬盘变missing了,RAID一块硬盘显示红色PDMissing解决办法
  3. 李飞飞计算机视觉-自用笔记(第一周)
  4. java中的控制层(controller)数据访问层(dao)业务逻辑层的(service)
  5. 一朝创业,十年奋战,和信VENGD 4.0让终端不再是难题!
  6. win10计算机如何禁用签名,怎样永久禁用Windows10驱动程序强制签名?一个命令就能轻松解决...
  7. 计算机网络知识点01——物理媒体(双绞铜线、同轴电缆、光纤、无线电信道)的比较
  8. 企业如何两步实现数据资产化?
  9. go vendor的正确使用方式
  10. 概率论与数理统计(2.5)随机变量的函数的分布