大良营销网站建设渠道,显示网站正在维护是什么情况,做消费金融网站,电子商务专业毕业后干什么274. 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
提示
n citations.length 1 n 5000 0 citations[i] 1000
题解
这题异常简单啊其实找出数学规律就可以了从大到小排列然后比较被引用次数和索引之间的大小关系。
class Solution {
public:int hIndex(vectorint citations) {sort(citations.begin(), citations.end());// for(const auto i : citations){// cout i ;// }for(auto it citations.rbegin(); it ! citations.rend(); it){if(it - citations.rbegin() *it){return it-citations.rbegin();}}return citations.size();}
};