From eaf95a6a711e8297f28c3d5b4310fdac755c8acf Mon Sep 17 00:00:00 2001 From: changchanghwang Date: Thu, 2 Jan 2025 21:45:46 +0900 Subject: [PATCH] feat: merge two lists --- merge-two-sorted-lists/changchanghwang.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 merge-two-sorted-lists/changchanghwang.go diff --git a/merge-two-sorted-lists/changchanghwang.go b/merge-two-sorted-lists/changchanghwang.go new file mode 100644 index 000000000..a58fc22a9 --- /dev/null +++ b/merge-two-sorted-lists/changchanghwang.go @@ -0,0 +1,20 @@ +type ListNode struct { + Val int + Next *ListNode +} + +func mergeTwoLists(list1 *ListNode, list2 *ListNode) *ListNode { + if list1 == nil { + return list2 + } + if list2 == nil { + return list1 + } + + if list1.Val < list2.Val { + list1.Next = mergeTwoLists(list1.Next, list2) + return list1 + } + list2.Next = mergeTwoLists(list1, list2.Next) + return list2 +}