Search

Intersection of Two Arrays II

문제 설명 : 각 주어진 배열에서 공통으로 사용된 요소를 반환(중복해서)
풀이 방법
하나의 배열을 사용하여, 다른 배열에 공통으로 들어있는지, 얼마나 들어있는지 확인
시간복잡도 : O(N)O(N)
성공 코드
from collections import Counter class Solution: def intersect(self, nums1: List[int], nums2: List[int]) -> List[int]: nums1_info = Counter(nums1) nums2_info = Counter(nums2) use_info = set() result = [] for k in nums1_info: if k not in use_info and nums2_info.get(k): for _ in range(min(nums1_info[k], nums2_info[k])): result.append(k) use_info.add(k) return result
Python
복사