From dc7603da93eb8377a12ffe20fff8b7ea3ac141ad Mon Sep 17 00:00:00 2001 From: Sandeep Pal Date: Sun, 16 Apr 2023 23:34:39 +0530 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=A6=20NEW:=20merge=5Ftwo=5Fshorted=5Fl?= =?UTF-8?q?ist?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 021_Merge_Two_Shorted_List.py | 39 +++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 021_Merge_Two_Shorted_List.py diff --git a/021_Merge_Two_Shorted_List.py b/021_Merge_Two_Shorted_List.py new file mode 100644 index 0000000..415a1e4 --- /dev/null +++ b/021_Merge_Two_Shorted_List.py @@ -0,0 +1,39 @@ +# Definition for singly-linked list. +class ListNode: + def __init__(self, x): + self.val = x + self.next = None + + def __repr__(self): + if self: + return "{} -> {}".format(self.val, self.next) + + +class Solution: + def mergeTwoLists(self, l1, l2): + dummy = ListNode(0) + current = dummy + + while l1 and l2: + if l1.val < l2.val: + current.next = l1 + l1 = l1.next + else: + current.next = l2 + l2 = l2.next + current = current.next + + if l1: + current.next = l1 + else: + current.next = l2 + + return dummy.next + + +if __name__ == "__main__": + l1 = ListNode(0) + l1.next = ListNode(1) + l2 = ListNode(2) + l2.next = ListNode(3) + print(Solution().mergeTwoLists(l1, l2))