From ca29ff7b14f12c285f2f4c10b53d6353d432af22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A0=95=ED=98=B8=EC=A7=84?= <50974359+hozzijeong@users.noreply.github.com> Date: Mon, 1 Dec 2025 23:23:32 +0900 Subject: [PATCH 1/3] feat: merge-two-sorted-lists --- merge-two-sorted-lists/hozzijeong.js | 32 ++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 merge-two-sorted-lists/hozzijeong.js diff --git a/merge-two-sorted-lists/hozzijeong.js b/merge-two-sorted-lists/hozzijeong.js new file mode 100644 index 0000000000..e3d57767f1 --- /dev/null +++ b/merge-two-sorted-lists/hozzijeong.js @@ -0,0 +1,32 @@ +/** + * Definition for singly-linked list. + * function ListNode(val, next) { + * this.val = (val===undefined ? 0 : val) + * this.next = (next===undefined ? null : next) + * } + */ +/** + * @param {ListNode} list1 + * @param {ListNode} list2 + * @return {ListNode} + */ + +/** + * list는 오름 차순으로 정렬되어 있기 때문에 두 개의 리스트의 head가 더 작은 값이 listNode의 next에 순서대로 들어오게 하면 됩니다. + * list 둘 중하나가 없는 경우에는 나머지 다른 하나의 리스트를 반환합니다. + * 두 헤드 중에서 더 작은 값의 next에 재귀적으로 다음 링크드 리스트를 넘겨주면서 비교하는 방법으로 문제를 해결했습니다 + * +*/ + +var mergeTwoLists = function(list1, list2) { + if(!list1 || !list2) return list1 || list2 + + if(list1.val < list2.val){ + list1.next = mergeTwoLists(list1.next,list2) + return list1 + } + + list2.next = mergeTwoLists(list2.next,list1); + + return list2; +}; From 893d1450e14cfb622e7fb678c30eec7674053ec1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A0=95=ED=98=B8=EC=A7=84?= <50974359+hozzijeong@users.noreply.github.com> Date: Tue, 2 Dec 2025 23:26:33 +0900 Subject: [PATCH 2/3] feat: maximum-depth-of-binary-tree --- maximum-depth-of-binary-tree/hozzijeong.js | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 maximum-depth-of-binary-tree/hozzijeong.js diff --git a/maximum-depth-of-binary-tree/hozzijeong.js b/maximum-depth-of-binary-tree/hozzijeong.js new file mode 100644 index 0000000000..b42cfc8a4e --- /dev/null +++ b/maximum-depth-of-binary-tree/hozzijeong.js @@ -0,0 +1,34 @@ +/** + * Definition for a binary tree node. + * function TreeNode(val, left, right) { + * this.val = (val===undefined ? 0 : val) + * this.left = (left===undefined ? null : left) + * this.right = (right===undefined ? null : right) + * } + */ +/** + * @param {TreeNode} root + * @return {number} + */ +var maxDepth = function(root) { + if(!root) return 0 + + const dfs = (node, level) =>{ + if(!node) return level; + + let left = level; + let right = level + + if(node.left){ + left = dfs(node.left, level+1) + } + + if(node.right){ + right = dfs(node.right, level+1) + } + + return Math.max(left,right); + } + + return dfs(root,1) +}; From 3bfd1857fcc0b91cc9f9c2fc78598b06cdb098c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A0=95=ED=98=B8=EC=A7=84?= <50974359+hozzijeong@users.noreply.github.com> Date: Wed, 3 Dec 2025 23:23:36 +0900 Subject: [PATCH 3/3] feat: find-minimum-in-rotated-sorted-array --- find-minimum-in-rotated-sorted-array/hozzijeong.js | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 find-minimum-in-rotated-sorted-array/hozzijeong.js diff --git a/find-minimum-in-rotated-sorted-array/hozzijeong.js b/find-minimum-in-rotated-sorted-array/hozzijeong.js new file mode 100644 index 0000000000..dbeacc28e1 --- /dev/null +++ b/find-minimum-in-rotated-sorted-array/hozzijeong.js @@ -0,0 +1,7 @@ +/** + * @param {number[]} nums + * @return {number} + */ +var findMin = function(nums) { + return Math.min(...nums) +};