蒙文网站建设情况汇报,织梦网站怎样入侵,中高端网站建设公司,页游大全H 指数
题目:
给你一个整数数组 citations #xff0c;其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。根据维基百科上 h 指数的定义#xff1a;h 代表“高引用次数” #xff0c;一名科研人员的 h 指数 是指他#xff08;她其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。根据维基百科上 h 指数的定义h 代表“高引用次数” 一名科研人员的 h 指数 是指他她至少发表了 h 篇论文并且每篇论文 至少 被引用 h 次。如果 h 有多种可能的值h 指数 是其中最大的那个。示例 1
输入citations [3,0,6,1,5]
输出3
解释给定数组表示研究者总共有 5 篇论文每篇论文相应的被引用了 3, 0, 6, 1, 5 次。由于研究者有 3 篇论文每篇 至少 被引用了 3 次其余两篇论文每篇被引用 不多于 3 次所以她的 h 指数是 3。示例 2
输入citations [1,3,1]
输出1解题思路: 先统计每个引用次数的论文数量, 然后再找到满足条件的最大H指数
class Solution {public int hIndex(int[] citations) {int n citations.length;int[] count new int[n 1]; // count数组用于统计每个引用次数的论文数量// 统计每个引用次数的论文数量for (int citation : citations) {if (citation n) {count[n];} else {count[citation];}}int papers 0; // 记录当前满足条件的论文数量for (int i n; i 0; i--) {papers count[i]; // 累加论文数量if (papers i) {return i; // 找到满足条件的最大H指数}}return 0;}
}