Leetcode Java H-Index

업데이트:

문제

Link

코드

class Solution {

  public int hIndex(int[] citations) {
    Arrays.sort(citations);
    int idx = citations.length - 1;
    int count = 0;
    while (idx >= 0 && citations[idx] > count) {
      count++;
      idx--;
    }
    return count;
  }

}

결과

Link

설명

  1. 각 논문의 인용 횟수인 주어진 정수 배열인 citations으로 H-Index를 구하는 문제이다.
    • 전문적인 내용으로 해석이 까다로운 문제이므로 간단히 설명하면, citations의 길이보다 작은 크기에서 최대 인용 가능한 횟수를 구하는 문제이다.
  2. citations를 오름차순으로 정렬하여 H-index를 구하기 쉽게 만든다.

  3. 문제 풀이에 필요한 변수를 정의한다.
    • idx는 citations의 길이를 저장하기 위한 변수이다.
    • count는 H-index를 저장할 변수로, 0으로 초기화 한다.
  4. citations를 탐색하여 idx가 0 이상이며 citations[idx]가 count 초과인 경우, count를 증가시키고 idx를 감소시킨다.

  5. 반복이 종료되면 H-index를 구한 count를 주어진 문제의 결과로 반환한다.

소스

Sample Code는 여기에서 확인 가능합니다.

댓글남기기