리트코드 - #25 Reverse Nodes in k-Group (Hard)
var reverseKGroup = function(head, k) {
let list = new Array();
while (head !== null) {
list.push(head.val);
head = head.next;
}
if (list.length === 0) return null;
for (let i = 0; i < list.length; i += k) {
let temp = list.slice(i, i+k);
if (temp.length < k) continue;
for (let j = 0; j < k; j++) {
list[i+j] = temp[k-j-1];
}
}
let result = new ListNode(list.pop());
while (list.length > 0) {
result = new ListNode(list.pop(), result);
}
return result;
};
slice()와 splice()의 차이를 알게 됨
slice()는 새로운 배열을 만들어서 잘라낸 것을 리턴하는 반면, splice()는 배열에서 삭제하면서 리턴함