From 556b35a5664c7f00dc1c190f5c26d97ffc0822e1 Mon Sep 17 00:00:00 2001 From: Y SrinivasaSupreeth Date: Fri, 9 Jan 2026 18:02:23 +0530 Subject: [PATCH] Solutions --- Duplicates_80.py | 13 +++++++++++++ Merge_88.py | 19 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 Duplicates_80.py create mode 100644 Merge_88.py diff --git a/Duplicates_80.py b/Duplicates_80.py new file mode 100644 index 00000000..5fdab961 --- /dev/null +++ b/Duplicates_80.py @@ -0,0 +1,13 @@ +class Solution: + def removeDuplicates(self, nums: List[int]) -> int: + if len(nums) <= 1: + return len(nums) + + k = 2 # position to place next valid element + + for i in range(2, len(nums)): + if nums[i] != nums[k - 2]: + nums[k] = nums[i] + k += 1 + + return k \ No newline at end of file diff --git a/Merge_88.py b/Merge_88.py new file mode 100644 index 00000000..170f139d --- /dev/null +++ b/Merge_88.py @@ -0,0 +1,19 @@ +class Solution: + def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None: + i = m - 1 + j = n - 1 + k = m + n - 1 + + while i >= 0 and j >= 0: + if nums1[i] > nums2[j]: + nums1[k] = nums1[i] + i -= 1 + else: + nums1[k] = nums2[j] + j -= 1 + k -= 1 + + while j >= 0: + nums1[k] = nums2[j] + j -= 1 + k -= 1 \ No newline at end of file