274

274. H-Index

这道题让我们求H指数,这个质数是用来衡量研究人员的学术水平的质数,定义为一个人的学术文章有n篇分别被引用了n次,那么H指数就是n.

用桶排序,按引用数从后往前计算论文数量,当论文数 >= 当前引用下标时。满足至少有N篇论文分别被引用了n次。

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

 

上一篇:4 使用Selenium模拟登录csdn,取出cookie信息,再用requests.session访问个人中心(保持登录状态)


下一篇:【【C++ Primer 第15章】 虚析构函数