Leetcode Java Majority Element
업데이트:
문제
코드
class Solution {
public int majorityElement(int[] nums) {
int result = 0;
int count = 0;
for (int num : nums) {
if (count == 0) {
result = num;
}
if (num != result) {
count--;
} else {
count++;
}
}
return result;
}
}
결과
설명
-
주어진 배열 nums에 속한 정수 중 과반수 이상 들어있는 값을 찾는 문제이다.
- 문제 풀이에 필요한 변수를 정의한다.
- result는 과반수 이상 존재하는 값을 저장하기 위한 변수이다.
- count는 result에 저장된 정수가 과반수 이상 존재하는지를 검증하기 위한 변수이다.
- 주어진 배열 nums를 반복하여 과반수 이상 존재하는 값을 변수 result에 넣는다.
- count가 0일 경우 처음 시작이거나 타 값이 더 많이 존재하는 경우이므로, result에 num을 넣어준다.
- 반복되는 정수 num이 result와 같지 않으면 count를 감소시키고, 같으면 count를 증가시킨다.
- 반복이 완료되면 과반수 이상 존재하는 정수를 저장한 result를 주어진 문제의 결과로 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기