nums라는 숫자 목록이 있고 목록에 여러 번 나타나는 숫자를 제거해야 하고 원래 목록에 나타나는 순서도 유지해야 한다고 가정합니다.
따라서 입력이 nums =[2, 4, 6, 1, 4, 6, 9]와 같으면 이러한 요소가 한 번만 나타나므로 출력은 [2, 1, 9]가 됩니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- dict :=새 지도
- 숫자 단위의 각 i에 대해 다음을 수행합니다.
- 내가 사전에 없으면
- 딕셔너리[i] :=0
- dict[i] :=dict[i] + 1
- 내가 사전에 없으면
- dict[e]가 1인 숫자의 모든 요소 e를 포함하는 목록을 반환
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
예
class Solution: def solve(self, nums): dict = {} for i in nums: if i not in dict: dict[i] = 0 dict[i] = dict[i] + 1 return [k for k, v in dict.items() if v == 1] ob = Solution() nums = [2, 4, 6, 1, 4, 6, 9] print(ob.solve(nums))
입력
[2, 4, 6, 1, 4, 6, 9]
출력
[2, 1, 9]