< 문제 간단설명 >
리스트에 있는 노드들을 오름차순으로 정렬하는 문제이다.
/**
* Definition for singly-linked list.
* function ListNode(val, next) {
* this.val = (val===undefined ? 0 : val)
* this.next = (next===undefined ? null : next)
* }
*/
/**
* @param {ListNode} head
* @return {ListNode}
*/
var sortList = function(head) {
if(!head) {
return null;
}
let result = [];
// 모든 노드를 배열에 넣음
while(head) {
result.push(head);
head = head.next;
}
// 노드의 value 값으로 오름차순 정렬
result.sort((a, b) => a.val - b.val);
// 리스트에 들어있는 노드들을 연결시켜줌
for(let i=0; i<result.length; i+=1) {
result[i].next = result[i + 1] || null;
}
return result[0];
};
'PS > LeetCode' 카테고리의 다른 글
LeetCode / Greedy / 621번 / Task Scheduler / JS (0) | 2023.04.28 |
---|---|
LeetCode / Greedy / 2131번 / Longest Palindrome by Concatenating Two Letter Words / JS (0) | 2023.04.28 |
LeetCode / Linked List / 328번 / Odd Even Linked List / JS (0) | 2023.04.28 |
LeetCode / Simulation / 1706번 / Where Will the Ball Fall / JS (0) | 2023.04.20 |