Algorithm/Online judge

[LeetCode] Array > Remove Duplicates from Sorted Array

민철킹 2021. 5. 6. 14:52

leetcode.com/explore/featured/card/top-interview-questions-easy/92/array/727/

 

Explore - LeetCode

LeetCode Explore is the best place for everyone to start practicing and learning on LeetCode. No matter if you are a beginner or a master, there are always new topics waiting for you to explore.

leetcode.com

 


풀이

정렬된 배열에서 중복을 제거하는 것이 문제이다.

가장 간단한 방법은 set에 담아 중복을 제거하고 list로 변환 후 정렬을 하는 것이 가장 간단할 것이다. 하지만 이 방법은 메모리를 많이 사용하기 때문에 좋은 방법은 아니라고 판단하여,

indexing을 이용하여 중복 유무를 판단하고 중복을 제거해주는 방법으로 문제를 풀었다.

class Solution:
    def removeDuplicates(self, nums: List[int]) -> int:
        if len(nums)==0: return 0
        
        
        i=0 
        for j in range(1,len(nums)):
            if nums[i]!=nums[j]: # If not duplicated
                i+=1  # Move i
                nums[i]=nums[j] # Swap
        
        return i+1
반응형