304 North Cardinal St.
Dorchester Center, MA 02124

# H-Index LeetCode Solution

## Problem – H-Index LeetCode Solution

Given an array of integers `citations` where `citations[i]` is the number of citations a researcher received for their `ith` paper, return compute the researcher’s `h`-index.

According to the definition of h-index on Wikipedia: A scientist has an index `h` if `h` of their `n` papers have at least `h` citations each, and the other `n − h` papers have no more than `h` citations each.

If there are several possible values for `h`, the maximum one is taken as the `h`-index.

Example 1:

``````Input: citations = [3,0,6,1,5]
Output: 3
Explanation: [3,0,6,1,5] means the researcher has 5 papers in total and each of them had received 3, 0, 6, 1, 5 citations respectively.
Since the researcher has 3 papers with at least 3 citations each and the remaining two with no more than 3 citations each, their h-index is 3.
``````

Example 2:

``````Input: citations = [1,3,1]
Output: 1
``````

Constraints:

• `n == citations.length`
• `1 <= n <= 5000`
• `0 <= citations[i] <= 1000`

## H-Index LeetCode Solution in Java

``````public int hIndex(int[] citations) {
int n = citations.length;
int[] buckets = new int[n+1];
for(int c : citations) {
if(c >= n) {
buckets[n]++;
} else {
buckets[c]++;
}
}
int count = 0;
for(int i = n; i >= 0; i--) {
count += buckets[i];
if(count >= i) {
return i;
}
}
return 0;
}
``````

## H-Index LeetCode Solution in Python

``````    return sum(i < j for i, j in enumerate(sorted(citations, reverse=True)))
``````

## H-Index LeetCode Solution in C++

``````class Solution {
public:
int hIndex(vector<int>& c) {
// 3 support variables for us
int s = 0, e = c.size() - 1, avg;
// the base of every happy binary search ever: having a sorted dataset
sort(begin(c), end(c));
// some good old binary search here to find the maximum element meeting the conditions
while (s <= e) {
if (c[avg = (e + s) / 2] < c.size() - avg) s = avg + 1;
else e = avg - 1;
}
return c.size() - s;
}
};
``````
##### H-Index LeetCode Solution Review:

In our experience, we suggest you solve this H-Index LeetCode Solution and gain some new skills from Professionals completely free and we assure you will be worth it.

If you are stuck anywhere between any coding problem, just visit Queslers to get the H-Index LeetCode Solution

Find on Leetcode

##### Conclusion:

I hope this H-Index LeetCode Solution would be useful for you to learn something new from this problem. If it helped you then don’t forget to bookmark our site for more Coding Solutions.

This Problem is intended for audiences of all experiences who are interested in learning about Data Science in a business context; there are no prerequisites.

Keep Learning!

More Coding Solutions >>

LeetCode Solutions

Hacker Rank Solutions

CodeChef Solutions