우선 노드의 다음 요소를 비교하며 하나의 노드로 이어질 수 있도록 정렬한다.
두 노드 중 하나의 노드라도 끝까지 도달했다면, 남은 노드를 정렬된 노드에 그대로 붙인다.
function mergeTwoLists(list1: ListNode | null, list2: ListNode | null): ListNode | null {
const result = new ListNode(0)
let baseNode = result
while(list1 && list2) {
if(list1.val <= list2.val) {
baseNode.next = list1
list1 = list1.next
} else {
baseNode.next = list2
list2 = list2.next
}
baseNode = baseNode.next
}
// 잔여 배열은 모두 baseNode의 다음 Node로 지정함
baseNode.next = list1 || list2
return result.next
};