1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-10 18:48:13 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/分隔链表 [split-linked-list-in-parts].html
2022-03-29 12:43:11 +08:00

38 lines
1.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<p>给你一个头结点为 <code>head</code> 的单链表和一个整数 <code>k</code> ,请你设计一个算法将链表分隔为 <code>k</code> 个连续的部分。</p>
<p>每部分的长度应该尽可能的相等:任意两部分的长度差距不能超过 1 。这可能会导致有些部分为 null 。</p>
<p><code>k</code> 个部分应该按照在链表中出现的顺序排列,并且排在前面的部分的长度应该大于或等于排在后面的长度。</p>
<p>返回一个由上述 <code>k</code> 部分组成的数组。</p>
&nbsp;
<p><strong>示例 1</strong></p>
<img alt="" src="https://assets.leetcode.com/uploads/2021/06/13/split1-lc.jpg" style="width: 400px; height: 134px;" />
<pre>
<strong>输入:</strong>head = [1,2,3], k = 5
<strong>输出:</strong>[[1],[2],[3],[],[]]
<strong>解释:</strong>
第一个元素 output[0] 为 output[0].val = 1 output[0].next = null 。
最后一个元素 output[4] 为 null ,但它作为 ListNode 的字符串表示是 [] 。
</pre>
<p><strong>示例 2</strong></p>
<img alt="" src="https://assets.leetcode.com/uploads/2021/06/13/split2-lc.jpg" style="width: 600px; height: 60px;" />
<pre>
<strong>输入:</strong>head = [1,2,3,4,5,6,7,8,9,10], k = 3
<strong>输出:</strong>[[1,2,3,4],[5,6,7],[8,9,10]]
<strong>解释:</strong>
输入被分成了几个连续的部分,并且每部分的长度相差不超过 1 。前面部分的长度大于等于后面部分的长度。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li>链表中节点的数目在范围 <code>[0, 1000]</code></li>
<li><code>0 &lt;= Node.val &lt;= 1000</code></li>
<li><code>1 &lt;= k &lt;= 50</code></li>
</ul>