LeetCode 725. 分隔链表

1. 题目

给定一个头结点为 root 的链表, 编写一个函数以将链表分隔为 k 个连续的部分。

每部分的长度应该尽可能的相等: 任意两部分的长度差距不能超过 1,也就是说可能有些部分为 null。

这k个部分应该按照在链表中出现的顺序进行输出,并且排在前面的部分的长度应该大于或等于后面的长度。

返回一个符合上述规则的链表的列表。

举例: 1->2->3->4, k = 5 // 5 结果 [ [1], [2], [3], [4], null ]

示例 1:
输入: 
root = [1, 2, 3], k = 5
输出: [[1],[2],[3],[],[]]
解释:
输入输出各部分都应该是链表,而不是数组。
例如, 输入的结点 root 的 val= 1, root.next.val = 2, \root.next.next.val = 3, 
且 root.next.next.next = null。
第一个输出 output[0] 是 output[0].val = 1, output[0].next = null。
最后一个元素 output[4] 为 null, 它代表了最后一个部分为空链表。示例 2:
输入: 
root = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], k = 3
输出: [[1, 2, 3, 4], [5, 6, 7], [8, 9, 10]]
解释:
输入被分成了几个连续的部分,并且每部分的长度相差不超过1.前面部分的长度大于等于后面部分的长度。提示:
root 的长度范围: [0, 1000].
输入的每个节点的大小范围:[0, 999].
k 的取值范围: [1, 50].

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/split-linked-list-in-parts
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

class Solution {
public:vector<ListNode*> splitListToParts(ListNode* root, int k) {ListNode *cur = root, *temp;vector<ListNode*> ans(k, NULL);int len = 0, i = 0;while(cur)//求链表长度{len++;cur = cur->next;}int len2 = len/k, len1 = len/k;//前面段长度len1,后面长度len2if(len%k)//不能整除len1 += 1;//前面段长度+1int n1 = len - k * len2, n;//n1段len1长度的int n2 = k - n1;//n2段len2长度的cur = root;while(n1--){ans[i++] = cur;n = len1;while(--n)cur = cur->next;//找到断开的点temp = cur->next;cur->next = NULL;//断开cur = temp;}while(n2--){ans[i++] = cur;n = len2;while(--n && cur)//后面的段可能有空的cur = cur->next;if(!cur)break;temp = cur->next;cur->next = NULL;cur = temp;}return ans;}
};

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477535.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

会议交流 | 知识工程/知识图谱教学研讨会 暨 知识工程课程群虚拟教研室第一次教学研讨会...

日程安排时 间&#xff1a;2022年10月11日&#xff08;周二&#xff09;19:40-21:00地 点&#xff1a;虚拟教研室&#xff08;B版&#xff09;/ 腾讯会议&#xff1a;287 808 963主持人&#xff1a;知识工程课程群虚拟教研室带头人 天津大学教授 王鑫教学研讨会会议议程&#x…

@FeignClient中的@RequestMapping也被SpringMVC加载的问题解决

问题描述 在之前发布的《Spring Cloud实战小贴士&#xff1a;Feign的继承特性(伪RPC模式)》一文中&#xff0c;我们介绍了如果使用Feign的继承特性来完成服务的提供以及服务的消费&#xff0c;实现了类似RPC的编程模式。但是&#xff0c;仔细一些的读者可能已经发现一个问题&a…

GIF发明者感染新冠后去世,没有他就没有表情包

文 | 金磊 发自 凹非寺源 | 量子位GIF&#xff08;图形交换格式&#xff09;发明人Stephen Wilhite&#xff0c;被曝去世&#xff0c;享年74岁。▲Stephen Wilhite据The Verge表示&#xff0c;在经过与Wilhite的妻子Kathaleen交流之后&#xff0c;确认他是于上周因感染新冠病毒…

LeetCode 1073. 负二进制数相加(负数进制)

1. 题目 给出基数为 -2 的两个数 arr1 和 arr2&#xff0c;返回两数相加的结果。 数字以 数组形式 给出&#xff1a;数组由若干 0 和 1 组成&#xff0c;按最高有效位到最低有效位的顺序排列。例如&#xff0c;arr [1,1,0,1] 表示数字 (-2)3 (-2)2 (-2)0 -3。数组形式 的…

图谱实战 | 真实世界医疗知识图谱及临床事件图谱构建

转载公众号 | DataFunTalk分享嘉宾&#xff1a;李林峰博士 医渡云 技术创新副总裁编辑整理&#xff1a;田育珍 搜狗出品平台&#xff1a;DataFunTalk导读&#xff1a;今天介绍的主题是真实世界医疗知识图谱及临床事件图谱的构建。数据源主要来自于医院的EMR、HIS、LIS、RIS等系…

Spring Cloud实战小贴士:Feign的继承特性(伪RPC模式)

通过之前发布的《Spring Cloud构建微服务架构&#xff1a;服务消费者&#xff08;Feign&#xff09;》&#xff0c;我们已经学会如何使用Spring MVC的注解来绑定服务接口。我们几乎完全可以从服务提供方的Controller中依靠复制操作&#xff0c;来构建出相应的服务接口客户端&am…

这个北航妹子也太卷了...

大家好&#xff0c;今天介绍一位好朋友&#xff0c;毕业于北航的AI算法小姐姐 rumor。rumor刚毕业时从事量化工作&#xff0c;后来转岗到互联网做算法&#xff0c;斩获了众多大厂offer&#xff0c;下面是她跳槽时整理的算法工程师面试知识点&#xff1a;就拿其中的数据结构节点…

LeetCode 1138. 字母板上的路径

1. 题目 我们从一块字母板上的位置 (0, 0) 出发&#xff0c;该坐标对应的字符为 board[0][0]。 在本题里&#xff0c;字母板为board [“abcde”, “fghij”, “klmno”, “pqrst”, “uvwxy”, “z”]. 我们可以按下面的指令规则行动&#xff1a;如果方格存在&#xff0c;U…

开源开放 | 中药说明书实体识别数据集TCM-NER

OpenKG地址&#xff1a;http://openkg.cn/dataset/tcm-ner阿里云天池&#xff1a;https://tianchi.aliyun.com/dataset/dataDetail?dataId86819开放许可协议&#xff1a;CC BY-SA 4.0 &#xff08;署名相似共享&#xff09;贡献者&#xff1a;阿里云&#xff08;陈漠沙&#x…

【公益】开放一台Eureka注册中心给各位Spring Cloud爱好者

这是一篇博客福利&#xff01; 相信很多关注Spring Cloud的爱好者们&#xff0c;不论是读我的系列文章和书籍还是看其他朋友们写的博客佳文&#xff0c;都不可避免的启动多个项目来体验Spring Cloud带来的整套微服务架构方案。其中&#xff0c;Eureka注册中心几乎是每个试验都必…

首个视觉-语言预训练综述来了!

文 | Feilong Chen等编 | 陈萍源 | 机器之心一文了解视觉 - 语言预训练最新进展和新领域。让机器做出与人类相似的反应一直是 AI 研究不懈追求的目标。为了让机器具有感知和思考的能力&#xff0c;研究人员进行了一系列相关研究&#xff0c;如人脸识别、阅读理解和人机对话&…

LeetCode 1233. 删除子文件夹

1. 题目 你是一位系统管理员&#xff0c;手里有一份文件夹列表 folder&#xff0c;你的任务是要删除该列表中的所有 子文件夹&#xff0c;并以 任意顺序 返回剩下的文件夹。 我们这样定义「子文件夹」&#xff1a; 如果文件夹 folder[i] 位于另一个文件夹 folder[j] 下&…

学术会议 | 欢迎注册参加第21届国际语义网大会ISWC-会议日程发布

ISWC(International Semantic Web Conference)是语义网和知识图谱领域的国际顶级学术会议&#xff0c;2022年10月23-27日&#xff0c;ISWC将通过线上的方式举办&#xff0c;汇聚全世界相关的科研工作者、从业者和领域专家&#xff0c;共同探讨、推进、塑造知识图谱与语义网技术…

Spring Cloud实战小贴士:Zuul统一异常处理(三)【Dalston版】

本篇作为《Spring Cloud微服务实战》一书关于Spring Cloud Zuul网关在Dalston版本对异常处理的补充。没有看过本书的读书也不要紧&#xff0c;可以先阅读我之前的两篇博文&#xff1a;《Spring Cloud实战小贴士&#xff1a;Zuul统一异常处理&#xff08;一&#xff09;》和《Sp…

LeetCode 1288. 删除被覆盖区间(lambda排序)

1. 题目 给你一个区间列表&#xff0c;请你删除列表中被其他区间所覆盖的区间。 只有当 c < a 且 b < d 时&#xff0c;我们才认为区间 [a,b) 被区间 [c,d) 覆盖。 在完成所有删除操作后&#xff0c;请你返回列表中剩余区间的数目。 示例&#xff1a; 输入&#xff1…

共同一作,会被认可吗?

文 | 检索宝源 | 科研大匠在我国&#xff0c;论文署名问题长期以来备受争议。尤其是共同第一作者&#xff0c;因没有统一认定标准&#xff0c;又直接影响硕博毕业、求职、考评的结果&#xff0c;而令人心神不宁。共一指的就是共同第一作者&#xff0c;也可以叫做并列第一作者&a…

Spring Cloud构建微服务架构:Hystrix监控数据聚合【Dalston版】

上一篇我们介绍了使用Hystrix Dashboard来展示Hystrix用于熔断的各项度量指标。通过Hystrix Dashboard&#xff0c;我们可以方便的查看服务实例的综合情况&#xff0c;比如&#xff1a;服务调用次数、服务调用延迟等。但是仅通过Hystrix Dashboard我们只能实现对服务当个实例的…

图谱实战 | 丁香园医疗领域图谱的构建与应用

分享嘉宾&#xff1a;付子玉 观澜网络 算法工程师编辑整理&#xff1a;孙佩霞 中国电信研究院出品平台&#xff1a;DataFunTalk导读&#xff1a;丁香园大数据组旨在为用户提供更优质的内容与服务&#xff0c;使用知识/概念图谱、预训练模型挖掘更深层次的用户意图。本文介绍了丁…

LeetCode 722. CPP删除注释(逻辑题)

1. 题目 给一个 C 程序&#xff0c;删除程序中的注释。这个程序source是一个数组&#xff0c;其中source[i]表示第i行源码。 这表示每行源码由\n分隔。 在 C 中有两种注释风格&#xff0c;行内注释和块注释。 字符串// 表示行注释&#xff0c;表示//和其右侧的其余字符应该被…

CVPR 2022 | 天大本科生论文入选!深度学习长尾分类新SOTA

文 | 丰色 发自 凹非寺 源 | 量子位&#xff08;QbitAI&#xff09;本科生搞科研到底能做出什么成绩&#xff1f;最新被CVPR 2022收录的一篇论文中&#xff0c;提供了一种新思路来解决深度学习中长尾分布数据的分类问题&#xff0c;最终实现了新SOTA。论文&#xff1a;https://…