sean.jin
Spark Code Blog
sean.jin
전체 방문자
오늘
어제
  • 분류 전체보기
    • 개발공부
      • Kotlin
      • LeetCode
      • Algorithm
      • React
    • 주식차트
    • 책리뷰
    • 유틸리티

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 책
  • 초보
  • 경제
  • 변동성
  • 주식투자
  • 아빠와 딸의 주식투자 레슨
  • 자기개발
  • 주식책리뷰
  • 쿼드러플위칭데이
  • 트리플 위칭데이
  • 주식입문자
  • 오
  • 책리뷰
  • 네마녀의날
  • 책추천
  • 부의 추월차선

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
sean.jin

Spark Code Blog

[JavaScript] 21. Merge Two Sorted Lists - 쉬운설명
개발공부/LeetCode

[JavaScript] 21. Merge Two Sorted Lists - 쉬운설명

2022. 3. 8. 23:25
반응형

21. Merge Two Sorted Lists

You are given the heads of two sorted linked lists list1 and list2.

Merge the two lists in a one sorted list. The list should be made by splicing together the nodes of the first two lists.

Return the head of the merged linked list.

 

Example 1:

Input: list1 = [1,2,4], list2 = [1,3,4]
Output: [1,1,2,3,4,4]

 

Example 2: 

Input: list1 = [], list2 = []
Output: []

 

Example 3: 

Input: list1 = [], list2 = [0]
Output: [0]

 

 

계획

문제 해결 전략

 

2개의 오름차순으로 정리된 linkedList를 LinkedList를 유지하며 오름차순으로 반환하는 함수를 만드는게 목표입니다. 

 

 

구현 전략

 

linkedList 1과 2의 노드 값을 비교하며 둘중 큰 값이 어떤것인지 if문으로 구별합니다. 

 

2 LinkedList를 비교하여 작은수를 result라는 linkedList의 tail에 next값으로 넣어주고,

 

추가된 Listnode를 가진 LinkedList는 포인터를 움직여 다음 값으로 이동합니다. 

 

 

해설

 

var mergeTwoLists = function(l1, l2) {
    let list = new ListNode()
    let head = list
    
    while (l1 !== null && l2 !== null) {
	
        if (l1.val < l2.val) {
            list.next = new ListNode(l1.val)
            l1 = l1.next
        } else {
            list.next = new ListNode(l2.val)
            l2 = l2.next
        }
        
        list = list.next
    }
    
    if (l1 !== null)
        list.next = l1
    if (l2 !== null)
        list.next = l2
    
    return head.next
};
반응형

'개발공부 > LeetCode' 카테고리의 다른 글

[JavaScript] 138. Copy List with Random Pointer, 해시맵 사용, 쉬운설명  (0) 2022.03.13
[JavaScript] 61. Rotate List Medium - 연결리스트 노드 옮기기, 쉬운설명, 반복문 사용  (0) 2022.03.13
[JavaScript] 206. Reverse Linked List - 쉬운설명, 인터뷰 필수 문제  (0) 2022.03.06
[JavaScript] 22. Generate Parentheses 풀이과정 쉬운 설명 - backtrack, recursion 활용  (0) 2022.03.06
[LeetCode] 190. Reverse Bits - JAVASCRIPT 풀이 과정 , 개념 설명 - 비트 연산자  (0) 2021.12.26
    '개발공부/LeetCode' 카테고리의 다른 글
    • [JavaScript] 138. Copy List with Random Pointer, 해시맵 사용, 쉬운설명
    • [JavaScript] 61. Rotate List Medium - 연결리스트 노드 옮기기, 쉬운설명, 반복문 사용
    • [JavaScript] 206. Reverse Linked List - 쉬운설명, 인터뷰 필수 문제
    • [JavaScript] 22. Generate Parentheses 풀이과정 쉬운 설명 - backtrack, recursion 활용
    sean.jin
    sean.jin
    앱개발, 알고리즘, JS, Kotlin, 미국 취업준비

    티스토리툴바