力扣HOT100 - 25. K 个一组翻转链表

embedded/2024/9/22 17:56:54/

解题思路:

java">class Solution {public ListNode reverseKGroup(ListNode head, int k) {ListNode dum = new ListNode(0, head);ListNode pre = dum;ListNode end = dum;while (end.next != null) {for (int i = 0; i < k && end != null; i++) {end = end.next;}if (end == null) break;ListNode start = pre.next;ListNode next = end.next;end.next = null;pre.next = reverse(start);start.next = next;pre = start;end = start;}return dum.next;}public ListNode reverse(ListNode head) {ListNode pre = null;ListNode cur = head;while (cur != null) {ListNode tmp = cur.next;cur.next = pre;pre = cur;cur = tmp;}return pre;}
}


http://www.ppmy.cn/embedded/9868.html

相关文章

c++中一些常用库函数

1.最大公约数 需要包括头文件#include<algorithm>,直接写__gcd(a,b),就是求a与b的最大公约数。 #include<iostream> #include<algorithm> #include<cstring> #include<cmath> #include<queue> #include<stack> #include<map>…

C语言案例——输出以下图案(两个对称的星型三角形)

目录 图片代码 图片 代码 #include<stdio.h> int main() {int i,j,k;//先输出上半部图案for(i0;i<3;i){for(j0;j<2-i;j)printf(" ");for(k0;k<2*i;k)printf("*");printf("\n");}//再输出下半部分图案for(i0;i<2;i){for(j0;j&…

springboot使用Mybatis中兼容多数据源的databaseId(databaseIdProvider)的简单使用方法

最近有兼容多数据库的需求&#xff0c;原有数据库使用的mysql&#xff0c;现在需要同时兼容mysql和pgsql&#xff0c;后期可能会兼容更多。 mysql和pgsql很多语法和函数不同&#xff0c;所以有些sql需要写两份&#xff0c;于是在全网搜索如何在mapper中sql不通用的情况下兼容多…

配置全局代理上网

#准备一台机器(160)&#xff0c;DNS注释掉 直接访问不行 curl https://www.baidu.com #代理访问OK curl -x 192.141.46.161:8888 https://www.baidu.com #CentOS设置全局代理 vi ~/.bashrc #加入以下内容 export http_proxyhttp://192.141.46.161:8888 export https_proxy…

为什么js无法通过contentDocument获取到iframe内容

最近在开发一个附件预览的页面&#xff0c;考虑到附件的安全性由后端对内容进行了加密&#xff0c;前端负责在页面引入iframe标签来加载数据&#xff0c;在这个过程中需要实时获取到iframe标签的渲染状态来判断什么时候loading结束&#xff1a; 这里我通过标签的方式来获取到i…

nacos配置mysql(windows)

nacos默认是使用的内置数据库derby ,可通过配置修改成mysql,修改成mysql之后&#xff0c;之前配置在derby的数据会丢失 本文使用mysql版本为8.0.22 nacos版本为2.3.1 在mysql里面先创建一个数据库test(名称自定义&#xff0c;和后面配置文件里面的一样就好了) 在上面创建的数据…

实验7-4:补全代码,插入操作

实验7-4&#xff1a;补全代码&#xff0c;插入操作 【问题描述】 初始化一维数组中的9个元素a[10]{2,5,6,8,11,15,17,20,25}&#xff0c;要求该数组已经按升序排列&#xff0c;从键盘输入一个整数num&#xff0c;并将其插入到数组a中&#xff0c;要求插入操作完成后&#xff0…

lazarus-ide简介

Lazarus是一个集成开发环境&#xff08;IDE&#xff09;&#xff0c;专为使用Free Pascal编译器的Pascal语言设计。它支持快速应用开发&#xff08;RAD&#xff09;&#xff0c;允许开发者创建跨平台的图形用户界面&#xff08;GUI&#xff09;应用程序。以下是关于Lazarus的来…