We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent ff16da4 commit fd994a6Copy full SHA for fd994a6
kotlin/0725-split-linked-list-in-parts.kt
@@ -0,0 +1,34 @@
1
+class Solution {
2
+ fun splitListToParts(head: ListNode?, k: Int): Array<ListNode?> {
3
+ var n = 0
4
+ var cur = head
5
+ while (cur != null) {
6
+ cur = cur?.next
7
+ n++
8
+ }
9
+
10
+ val len = n / k
11
+ var rem = n % k
12
13
+ cur = head
14
+ val res = arrayOfNulls<ListNode?>(k)
15
+ for (i in 0 until k) {
16
+ res[i] = cur
17
18
+ val end = (len - 1) + if (rem > 0) 1 else 0
19
+ for (j in 0 until end) {
20
+ cur?: break
21
22
23
24
+ if (rem > 0) rem--
25
+ if (cur != null) {
26
+ val temp = cur?.next
27
+ cur.next = null
28
+ cur = temp
29
30
31
32
+ return res
33
34
+}
0 commit comments