当前位置: 首页 > news >正文

【牛客刷题】反转固定区间链表、每k个节点一组反转

 链表内指定区间反转_牛客题霸_牛客网

 

    ListNode* reverseList(ListNode* head, ListNode* tail) {ListNode* pre = nullptr;ListNode* cur = head;while (cur != tail) { 最后cur就是tailListNode* temp = cur->next;cur->next = pre;pre = cur;cur = temp;}return pre;}ListNode* reverseBetween(ListNode* head, int m, int n) {ListNode* dummyNode = new ListNode(0);dummyNode->next = head;ListNode* pre = dummyNode;for (int i = 1; i < m; i++) {pre = pre->next;}ListNode* start = pre->next;ListNode* end = pre->next;for (int i = m; i <= n; i++) {end = end->next;}pre->next = reverseList(start, end);//执行这个函数以后start变成传过去的链表的尾节点,所以直接连接start和end就行start->next = end;return dummyNode->next;}

链表中的节点每k个一组翻转_牛客题霸_牛客网 

    ListNode* reverseList(ListNode* head, ListNode* tail) {ListNode* pre = nullptr;ListNode* cur = head;while (cur != tail) {ListNode* temp = cur->next;cur->next = pre;pre = cur;cur = temp;}return pre;}ListNode* reverseKGroup(ListNode* head, int k) {// write code hereif (k == 1 || head->next == nullptr || head == nullptr) return head;ListNode* dummy = new ListNode(0);dummy->next = head;ListNode* pre = dummy;ListNode* start = pre->next;ListNode* end = pre;while (end->next != nullptr && end != nullptr) {start = pre->next;end = pre;int i;for (i = 0; i <= k; i++) {if (end->next) end = end->next;else {end = nullptr;break;}}if (i < k) break;else {pre->next = reverseList(start, end);start->next = end;pre = start;}}return dummy->next;}

相关文章:

【牛客刷题】反转固定区间链表、每k个节点一组反转

链表内指定区间反转_牛客题霸_牛客网 ListNode* reverseList(ListNode* head, ListNode* tail) {ListNode* pre nullptr;ListNode* cur head;while (cur ! tail) { 最后cur就是tailListNode* temp cur->next;cur->next pre;pre cur;cur temp;}return pre;}ListNode…...

算法:数组常见套路1---双指针、取模、打擂台法

文章来源&#xff1a; https://blog.csdn.net/weixin_45630258/article/details/132738318 欢迎各位大佬指点、三连 一、数组的合并–双指针[快慢指针] 1、题目&#xff1a; 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2&#xff0c;另有两个整数 m 和 n &#xff0…...

App 出海实践:Google Play 结算系统

作者&#xff1a;业志陈 现如今&#xff0c;App 出海热度不减&#xff0c;是很多公司和个人开发者选择的一个市场方向。App 为了实现盈利&#xff0c;除了接入广告这种最常见的变现方式外&#xff0c;就是通过提供各类虚拟商品或者是会员服务来吸引用户付费了&#xff0c;此时 …...

国际慈善日 | 追寻大爱无疆,拓世科技集团的公益之路

每年的9月5日&#xff0c;是联合国大会正式选定的国际慈善日。这一天的设立&#xff0c;旨在通过提高公众对慈善活动的意识&#xff0c;鼓励慈善公益活动通过各种形式在全球范围内得到增强和发展。这是一个向慈善公益事业致敬的日子&#xff0c;同时也是呼吁全球团结一致共同发…...

关于DNS的一些认识

目录 什么是DNS&#xff1f; 一台具有单个DNS的机器可以拥有多个地址吗&#xff1f; 一台计算机可以有多个属于不同顶级域的DNS名字吗&#xff1f; 什么是DNS&#xff1f; DNS是域名系统&#xff08;Domain Name System&#xff09;的缩写&#xff0c;它是互联网中用于将域名…...

游戏性能优化

Unity性能优化主要包括以下方面&#xff1a; 1.渲染性能 。包括减少Draw Calls、减少三角面数、使用LOD、使用批处理技术、减少实时光源等&#xff0c;以提高游戏的帧率和渲染效率。 2.内存性能 。包括使用对象池、使用合适的纹理、使用异步加载资源等&#xff0c;以减少内存占…...

公开游戏、基于有向图的游戏

目录 〇&#xff0c;背景 一&#xff0c;公开游戏、策梅洛定理 1&#xff0c;公开游戏 2&#xff0c;策梅洛定理 二&#xff0c;有向图游戏 1&#xff0c;狭义有向图游戏 2&#xff0c;广义有向图游戏 3&#xff0c;狭义有向图游戏的SG数 4&#xff0c;Bash Game 力扣…...

CSS学习笔记05

CSS笔记05 定位 position CSS 属性position - 用于指定一个元素在文档中的定位方式。top&#xff0c;right&#xff0c;bottom 和 left 属性则决定了该元素的最终位置。position 有以下常用的属性值&#xff1a; position: static; - 默认值。指定元素使用正常的布局行为&am…...

Linux查看指定端口是否被占用

在Linux中&#xff0c;可以使用多种方法来检查一个特定端口&#xff08;例如3306&#xff0c;通常由MySQL使用&#xff09;是否被占用&#xff1a; 使用netstat命令: 如果系统中已安装了netstat&#xff0c;可以使用以下命令检查3306端口&#xff1a; netstat -tuln | grep 330…...

【Python 自动化】小说推文一键生成思路概述

最近看了一下小说推文成品软件的思路&#xff0c;发现可以完全迁移到我的 BookerAutoVideo 上面来。这篇短文里面&#xff0c;我试着分析一下整个推文视频生成的流程&#xff0c;以及简要阐述一下有什么工具。 整体流程是这样&#xff1a; 分句 原文是按照段落组织的&#xf…...

MySQL中的字符集与排序规则详解

在 MySQL 中&#xff0c;字符集&#xff08;Character Set&#xff09;用于确定可以在数据库中存储的字符集合&#xff0c;而排序规则&#xff08;Collation&#xff09;用于指定比较和排序字符串的规则。下面是关于 MySQL 中字符集和排序规则的一些详细信息&#xff1a; 字符集…...

Java中如何进行加锁??

笔者在上篇文章介绍了线程安全的问题&#xff0c;接下来本篇文章就是来讲解如何避免线程安全问题~~ 前言&#xff1a;创建两个线程&#xff0c;每个线程都实现对同一个变量count各自自增5W次&#xff0c;我们来看一下代码&#xff1a; class Counter{private int count0;publi…...

Pytorch3D多角度渲染.obj模型

3D理解在从自动驾驶汽车和自主机器人到虚拟现实和增强现实的众多应用中发挥着至关重要的作用。在过去的一年里&#xff0c;PyTorch3D已经成为一个越来越流行的开源框架&#xff0c;用于使用Python进行3D深度学习。值得庆幸的是&#xff0c;PyTorch3D 库背后的人员已经完成了实现…...

MyBatisPlus 基础Mapperr接口:增删改查

MyBatisPlus 基础Mapper接口&#xff1a;增删改查 插入一条数据 代码 Testpublic void insert() {User user new User();user.setId(6L);user.setName("张三");user.setAge(25);user.setEmail("zhangsanexample.com");userMapper.insert(user);}日志 数…...

计算机网络与技术——概述

&#x1f60a;计算机网络与技术——概述 &#x1f47b;前言&#x1f94f;信息时代下计算机网络的发展&#x1f30f;互联网概述&#x1f4e1;计算机网络基本概念&#x1f4e1;互联网发展三阶段&#x1f4e1;互联网的标准化 &#x1f30f;互联网的组成&#x1f4e1;互联网的边缘部…...

详解TCP/IP协议第三篇:通信数据在OSI通信模型的上下传输

文章目录 一:OSI通信模型间数据传输展示 二:应用层到会话层解析 1:应用层 2:表现层 3:会话层...

《C++ primer plus》精炼(OOP部分)——对象和类(2)

“学习是人类成长的喷泉。” - 亚里士多德 文章目录 内联函数对象的方法和属性构造函数和析构函数构造函数的种类使用构造函数析构函数列表初始化 const成员函数this指针对象数组类作用域作用域为类的常量类作用域内的枚举 内联函数 定义位于类声明中的函数自动成为内联函数。…...

一点感受

做了两天企业数字化转型的评委&#xff0c;涉及全国最顶级的公司、最顶级的实际落地项目案例&#xff0c;由企业真实的落地团队亲自当面讲解。主要是为了了解了解真实的一线、真实的客户、真实的应用现状和应用水平。 &#xff08;1&#xff09;现状 我评审的涉及底层技术平台&…...

VirtualBox RockyLinux9 网络连接

有几次都是隔一段时间之后启动虚拟机&#xff0c;用第三方ssh工具就连接不上了。 简单记录一下。 1、VirtualBox设置 2、IP设置 cd /etc/NetworkManager/system-connections/ vim enp0s3.nmconnection[connection] idenp0s3 uuid9c404b41-4636-397c-8feb-5c2ed38ef404 typeet…...

java 实现适配器模式

适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;用于将一个类的接口转换成另一个类的接口&#xff0c;使得原本不兼容的类可以协同工作。适配器模式包括两种类型&#xff1a;类适配器和对象适配器。下面分别介绍这两种类型的实现方式。 类…...

后端常用的Linux命令大全

后端常用的Linux命令大全 基础常用命令 Sudo Command 该命令是“superuser do”的缩写。sudo 是最常用的命令之一&#xff0c;可让你执行需要管理或 root 特权和权限的任务。 使用sudo命令时系统会提示用户重新使用密码进行身份验证。接下来&#xff0c;Linux 系统将记录一…...

C++面向对象

C面向对象知识 内存字节对齐 #pragma pack(n) 表示的是设置n字节对齐,windows默认是8字节&#xff0c;linux是4字节&#xff0c;鲲鹏是4字节 struct A{char a;int b;short c; };char占一个字节&#xff0c;起始偏移为零&#xff0c;int占四个字节&#xff0c;min(8,4)4&#x…...

什么是栈顶缓存技术

假设有一个基于流水线架构的处理器&#xff0c;它需要执行一系列指令。这些指令包括加载数据、执行计算和存储结果。在流水线中&#xff0c;不同阶段的指令可以并行执行。 现在考虑一个简单的情况&#xff0c;其中需要执行以下两个指令&#xff1a; 加载数据指令&#xff1a;…...

TDesign的input标签

目录 一、 新建页面01-todolist 二、 t-input标签、t-button标签 2.1 t-input标签 2.1.1 01-todolist.wxml页面 2.2 01-todolist.json页面 2.3 01-todolist.js页面 2.4 01-todolist.wxss页面 2.2 t-button标签 示例1&#xff1a;bind:change 示例2&#xff1a;bind:…...

从零开始学习 Java:简单易懂的入门指南之Map集合(二十三)

Map集合 1.Map集合1.1Map集合概述和特点1.2Map集合的基本功能1.3Map集合的获取功能1.4Map集合的遍历(方式1)1.5Map集合的遍历(方式2) 2.HashMap集合2.1HashMap集合概述和特点2.2HashMap集合应用案例 3.TreeMap集合3.1TreeMap集合概述和特点3.2TreeMap集合应用案例 1.Map集合 1…...

SpringBoot 拦截org.thymeleaf.exceptions.TemplateInputException异常

SpringBoot 拦截thymeleaf异常 org.thymeleaf.exceptions.TemplateInputException异常 org.thymeleaf.exceptions.TemplateProcessingE xception: Could not parse as each: "message : xxx " (template: “xxxx” - line xx, col xx) thymeleaf异常复现 你是故意的…...

Qt之随机数

介绍使用qsrand和qrand生成随机数。 生成随机数 生成随机数主要用到了函数qsrand和qrand&#xff0c;qsrand用来设置种子点&#xff0c;该种子为qrand生成随机数的起始值。如果不调用qsrand,那么qrand()就会自动调用qsrand(1)&#xff0c;即系统默认将1作为随机数的起始值。使…...

UWB学习——day2

UWB应用 基于上文UWB学习——day1中对UWB技术的相关优势介绍&#xff0c;UWB技术可广泛应用于以下场景。 WPAN&#xff08;无线个域网&#xff09; 基于其高精度&#xff08;亚厘米级&#xff09;、低功耗和高穿透性等特征&#xff0c;在以人为基础的个域网中应用广泛&#…...

使用 multiprocessing 多进程处理批量数据

示例代码 import multiprocessingdef process_data(data):# 这里是处理单个数据的过程return data * 2# 待处理的数据 data [1, 2, 3, 4, 5]def normal_func():# 普通处理方式result []for obj in data:result.append(process_data(obj)return resultdef parallel_func():# …...

React 与 TS 结合使用时组件传参总结

在学习 React 时&#xff0c;我们总会遇到在 TS 和 JS 之间切换来开发多个项目&#xff0c;而有时会忘记 TS 的语法&#xff0c;所以编写一下 React 结合 TS 开发时的一些总结知识点&#xff0c;以便后续回顾用。 向组件传递基础参数&#xff08;字符串、数字和布尔值&#xf…...

网站维护服务器/近10天的时政新闻

天王盖地虎&#xff0c;宝塔镇河妖。这是一句很经典的江湖黑话&#xff0c;大家应该都听过吧&#xff1f; 俗话说行有行规&#xff0c;道有道义&#xff0c;不同的人群中就连说话都有专门的方式&#xff0c;而他们之间也有同类人才懂得暗号。职场如江湖&#xff0c;身为程序员…...

苏州做网站建设公司/seo专业培训学费多少钱

1. 运行时常量池和静态变量都存储到了堆中&#xff0c;MetaSpace存储类的元数据&#xff0c;MetaSpace直接申请在本地内存中&#xff08;Native memory&#xff09;,这样类的元数据分配只受本地内存大小的限制,OOM问题就不存在了。除此之外&#xff0c;还有其他很多好处&#x…...

建设银行网站用户登录/杭州网站优化

场景&#xff1a;当某个同事需要你传服务器上某个文件给他的时候&#xff0c;其实可以利用python开启一个下载器&#xff0c;直接给个url给同事就可以了。1&#xff09;查看python的版本&#xff08;因为python2与python3开启的命令有些差异&#xff09;[rootLVS-DR01 ~]# pyth…...

广州最专业的网站建设/成都官网seo费用

引用自&#xff1a; asp.net获取网站路径 http://hi.baidu.com/zhangfengbang/blog/item/5f99d74b0ce661f883025cbc.html HttpRequest 成员 http://msdn.microsoft.com/zh-cn/library/system.web.httprequest_members(vVS.80).aspx ASP.NET获取网站根目录的url的函数&#xff0…...

政府网站建设及其对策参考文献/百度平台商家

sar工具使用详细介绍 一&#xff1a;命令介绍&#xff1a;参考资料&#xff1a;http://linux.die.net/man/1/sar sar&#xff08;System ActivityReporter系统活动情况报告&#xff09;是目前Linux上最为全面的系统性能分析工具之一&#xff0c;可以从多方面对系统的活动进行报…...

门户wordpress主题/引擎优化seo怎么做

1.安装ntp软件包sudo apt-get install ntp2.同步时间sudo ntpdate -u 210.72.145.443.检查本地时间和时间服务器的时间的误差sudo ntpdate -q 210.72.145.44关键&#xff1a;找对同步的服务器转载于:https://blog.51cto.com/kaiyuan/563607...