274. H-Index - LeetCode

Question

274. H-Indexjava

Solution

题目大意:数组

论文里的 h 因子断定,题目的意思可能有点晦涩。h 因子是评判学术成就的一种重要方法,h 因子越高越好,h 因子兼顾研究学术人员的学术产出数量与学术产出质量。假设一个研究者的 h 因子为 10,则代表该研究者被引用次数大于等于 10 的文章数量也应大于等于 10。code

思路:见代码注释排序

Java实现:ip

public int hIndex(int[] citations) {
    if (citations.length == 0) return 0;
    // 数组大小表示发表的论文数量
    // 数组的元素表示每篇论文被引用的次数(间接代表论文的质量)

    // 论文根据引用次数排序
    Arrays.sort(citations);
    int level = 0; // 表明研究者的水平   求max(h),知足被引用的次数>=h的论文数>=h
    for (int i=0; i<citations.length; i++) {
        level = Math.max(level, Math.min(citations.length - i, citations[i]));
    }
    return level;
}
相关文章
相关标签/搜索