본문 바로가기
코딩 공부

Leetcode 27. Remove Element Python

by 카우보이연구소 2022. 2. 11.

요즘에는 개발자들이 회사에 취업하기 위해서 사용한다는 리트코드 (leetcode) 사이트의 문제들을 풀어보고 있습니다. 이제 막 시작한 초보자라 힘든 점이 많아서 이렇게 글로 남겨서 복습하려고 합니다.

 

문제: Remove Element
등급: Easy

내용:

 

<코드>

class Solution(object):
    def removeElement(self, nums, val):
        if not nums:
            return 0
        
        
        while val in nums:
            nums.remove(val)
            
        return len(nums)

<논리>

약간의 편법이 들어간 코드이다. 원래는, 그 element를 없애고 난 뒤의 남은 것들만 list가 있다면 그 남아있는 숫자를 줘야한다. 아, 그 없애는 것이 아닌 원래 다른 값으로 교체?를 하는 것이다. 그런데, 난 그냥 없앴다. 없애도 상관이 없을 것 같아서...

 

다른 솔루션으로 two pointer method가 있다.

<코드>

class Solution(object):
    def removeElement(self, nums, val):
        i = 0
        
        for j in range(len(nums)):
            if nums[j] != val:
                nums[i] = nums[j]
                i += 1
        
        return i

 

<총평>

 

Happy coding!

 

'코딩 공부' 카테고리의 다른 글

Leetcode 441. Arranging Coins - 파이썬  (0) 2022.02.20
Leetcode 258. Add Digits - Python  (0) 2022.02.13
Leetcode 14. Longest Prefix  (0) 2022.02.09
Leetcode: 13. Roman to Integer - Python  (0) 2022.02.08

댓글