리스트의 길이 / 2 보다 중복 개수가 많은 원소들 중에서 가장 높은 원소를 return 해주는 문제이다.
int defaultdict를 선언해준다.
for문으로 리스트를 탐색한다.
딕셔너리에 원소의 개수를 1씩 더해 카운트 해준다.
원소의 개수가 리스트의 길이 / 2 보다 큰지 확인한다.
크다면 result 리스트에 저장한다.
result 리스트 중 가장 큰 값을 return 한다.
from collections import defaultdict
class Solution:
def majorityElement(self, nums: List[int]) -> int:
nums_cnt = defaultdict(int) ## 1. int defaultdict를 선언해준다.
leng = len(nums)
result = []
for i in range(leng): ## 2. for문으로 리스트를 탐색한다.
nums_cnt[nums[i]] += 1 ## 3. 딕셔너리에 원소의 개수를 1씩 더해 카운트 해준다.
if nums_cnt[nums[i]] >= leng/2: ## 4. 원소의 개수가 리스트의 길이 / 2 보다 큰지 확인한다.
result.append(nums[i]) ## 5. 크다면 result 리스트에 저장한다.
return max(result) ## 6. result 리스트 중 가장 큰 값을 return 한다.