274 H-Index H指数

给定一位研究者的论文被引用次数的数组(被引用次数是非负整数)。写一个方法计算出研究者的H指数。
H-index定义: “一位科学家有指数 h 是指他(她)的 N 篇论文中至多有 h 篇论文,分别被引用了至少 h 次,其余的 N - h 篇论文每篇被引用次数不多于 h 次。"
例如,给定 citations = [3, 0, 6, 1, 5],意味着研究者总共有 5 篇论文,每篇论文相应的被引用了 3, 0, 6, 1, 5 次。由于研究者有 3 篇论文每篇至少被引用了 3 次,其余两篇论文每篇被引用不多于 3 次,所以他的 h 指数是 3。
注意: 如果 h有几个可能的值 , h 指数是指其中最大的那个。

详见:https://leetcode.com/problems/h-index/description/

class Solution {
public:
    int hIndex(vector<int>& citations) {
        sort(citations.begin(),citations.end(),[](const int a,const int b){return a>b;});
        for(int i=0;i<citations.size();++i)
        {
            if(citations[i]<=i)
            {
                return i;
            }
        }
        return citations.size();
    }
};

参考:https://www.cnblogs.com/grandyang/p/4781203.html

原文地址:https://www.cnblogs.com/xidian2014/p/8761389.html

时间: 2024-11-01 17:43:38

274 H-Index H指数的相关文章

oc 与 swift 之间的桥接文件 (ProjectNmae-Bridging-Header.h) (ProjectNmae-Swift.h)

oc 与 Swift 是2用不同的语言, oc代码只能写带oc文件里, Swift代码只能写在Swift文件里, 虽然2者不同语言, 但却能互相调用, 不过需要进行一下桥接, 就是下面的2个文件 (ProjectNmae-Bridging-Header.h) Swift文件要调用oc代码的时候 你会发现你无法引用oc.h文件, 所以就要用到这个文件, 对oc文件进行桥接, 把一些oc.h文件在这里引用进去, 然后你就可以在Swift文件里操作oc代码 (ProjectNmae-Swift.h)

sed命令n,N,d,D,p,P,h,H,g,G,x解析2

摘自: https://blog.csdn.net/xiexingshishu/article/details/50514132 sed命令n,N,d,D,p,P,h,H,g,G,x解析 2016年01月13日 23:55:32 kgduu 阅读数:4342更多 个人分类: shell 1. sed执行模板=sed '模式{命令1;命令2}' 即逐行读入模式空间,执行命令,最后输出打印出来 2. 为方便下面,先说下p和P,p打印当前模式空间内容,追加到默认输出之后,P打印当前模式空间开端至\n的

Sed命令n,N,d,D,p,P,h,H,g,G,x解析3

摘自:https://blog.csdn.net/WMSOK/article/details/78463199 Sed命令n,N,d,D,p,P,h,H,g,G,x解析 2017年11月06日 23:21:44 DataCareer 阅读数:503 标签: sedlinuxshell 更多 个人分类: Shell 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/WMSOK/article/details/78463199 前言 sed执行模板=s

ORB-SLAM2学习3 MapPoint.h Map.h KeyFrame.h

1.MapPoint.h 里面有个类MapPoint,其有两个构造函数.分别为,参考帧是关键帧和参入是普通帧的情况. 1 MapPoint(const cv::Mat &Pos, KeyFrame* pRefKF, Map* pMap); MapPoint(const cv::Mat &Pos, Map* pMap, Frame* pFrame, const int &idxF); [email protected] Pos,指的是该点的3D位置. 2 @pRefKF,参考关键帧.

pod JONSKit.h MBProgress.h 找不到头文件,怎么办?

这时你看项目pod部分,多了JSONKit库.好了,第三方库就这么神奇的加进来. 头文件路径 那试试看使用JONSKit.h,在ViewController.m里引用下.找不到头文件,怎么办?还没设置头文件的目录,在项目的Target的里设置一下: 如下图所示,输入${SRCROOT}  后面选上recursive.

sed命令n,N,d,D,p,P,h,H,g,G,x解析

1. sed执行模板=sed '模式{命令1;命令2}' 即逐行读入模式空间,执行命令,最后输出打印出来 2. 为方便下面,先说下p和P,p打印当前模式空间内容,追加到默认输出之后,P打印当前模式空间开端至\n的内容,并追加到默认输出之前. sed并不对每行末尾\n进行处理,但是对N命令追加的行间\n进行处理,因为此时sed将两行看做一行. 2-1.n命令 n命令简单来说就是提前读取下一行,覆盖模型空间前一行(并没有删除,因此依然打印至标准输出),如果命令未执行成功(并非跳过:前端条件不匹配),

hpp.h与.h的区别

hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再将cpp加入到project中进行编译.而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减少调用 project中的cpp文件数与编译次数,也不用再发布烦人的lib与dll,因此非常适合用来编写公用的开源库. hpp的优点不少,但是编写中有以下几点要注意: 1.是Header   Plus   Plus 的简写. 2.

MVC 控制器向View传值的三种方法

1.提供视图模型对象 你能把一个对象作为View方法的参数传递给视图. public ViewResult Index() { DateTime date = DateTime.Now; return View(date); } 然后我们在视图中使用Razor的Model关键字来访问这个对象 @{ ViewBag.Title = "Index"; } <h2>Index</h2> The day is: @(((DateTime)Model).DayOfWeek

ASP.NET MVC 控制器向View传值的三种方法

转自:http://www.cnblogs.com/shinima/p/3940452.html 1.提供视图模型对象 你能把一个对象作为View方法的参数传递给视图. public ViewResult Index() { DateTime date = DateTime.Now; return View(date); } 然后我们在视图中使用Razor的Model关键字来访问这个对象 @{ ViewBag.Title = "Index"; } <h2>Index<

layer——源码学习

/*! layer-v2.3 弹层组件 License LGPL http://layer.layui.com/ By 贤心 */ ; ! function(a, b) { "use strict"; var c, d, e = { //获取加载文件地址上级路径 getPath: function() { var a = document.scripts, b = a[a.length - 1], c = b.src; if (!b.getAttribute("merge&q