📖 오늘의 학습 키워드
배열
[H-Index II]
https://leetcode.com/problems/h-index-ii/description/
class Solution {
public int hIndex(int[] citations) {
int hIdx = 0;
int left = 0;
int right = citations.length - 1;
while(left <= right) {
int mid = left + (right - left) / 2;
if(citations[mid] >= citations.length - mid) {
hIdx = citations.length - mid;
right = mid - 1;
} else {
left = mid + 1;
}
}
return hIdx;
}
}
for문을 돌며 h-index를 구해도 문제가 풀리지만, 문제에서 알고리즘의 시간 복잡도가 로그 시간을 가져야 한다고 했기 때문에 이진 탐색을 이용해 문제를 풀었다.