H指数定义:
H指数是用来综合衡量学者发表论文的数量和质量的指标。
若某学者共发表N篇论文,H指数是指存在h篇论文至少每篇有h引用量,剩下的N-h篇中,每篇都不超过h引用量。
一.排序法
复杂度
时间 O(NlogN) 空间 O(1)
思路
先将数组排序,我们就可以知道对于某个引用数,有多少文献的引用数大于这个数。对于引用数citations[i],大于该引用数文献的数量是citations.length - i,而当前的H-Index则是Math.min(citations[i], citations.length - i),我们将这个当前的H指数和全局最大的H指数来比较,得到最大H指数。
代码
public class Solution {
public int hIndex(int[] citations) {
// 排序
Arrays.sort(citations);
int h = 0;