mirror of
https://github.com/autistic-symposium/master-algorithms-py.git
synced 2025-05-23 00:41:19 -04:00
Update and rename array-remove-duplicate-inplace.py to remove_dups_inplace.py
This commit is contained in:
parent
2f1db3f84e
commit
b81ccd579b
1 changed files with 0 additions and 8 deletions
|
@ -1,32 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
# author: bt3gl
|
||||
|
||||
### 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, '_', '_', '_', '_', '_']))
|
Loading…
Add table
Add a link
Reference in a new issue