mirror of
https://github.com/autistic-symposium/master-algorithms-py.git
synced 2025-04-30 12:46:11 -04:00
29 lines
663 B
Python
29 lines
663 B
Python
### Remove Duplicates from Sorted Array in-place
|
|
|
|
|
|
def remove_duplicates(nums: list[int]) -> int:
|
|
|
|
arr_i, dup_i = 0, 1
|
|
|
|
while arr_i < len(nums) and dup_i < len(nums):
|
|
|
|
if nums[arr_i] == nums[dup_i]:
|
|
dup_i += 1
|
|
|
|
else:
|
|
arr_i += 1
|
|
nums[arr_i] = nums[dup_i]
|
|
|
|
for i in range(arr_i + 1, dup_i):
|
|
nums[i] = '_'
|
|
|
|
return dup_i - arr_i - 1, nums
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
|
nums = [0, 0, 1, 1, 1, 2, 2, 3, 3, 4]
|
|
assert(remove_duplicates(nums) == (5, [0, 1, 2, 3, 4, '_', '_', '_', '_', '_']))
|