LeetCode 274. H-Index

Posted co0oder

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 274. H-Index相关的知识,希望对你有一定的参考价值。

 1 class Solution {
 2 public:
 3     int hIndex(vector<int>& citations) {
 4         sort(citations.begin(), citations.end());
 5         for(int i = 0; i < citations.size(); ++i){
 6             if(citations[i] >= citations.size() - i)
 7                 return citations.size() - i;
 8         }
 9         
10     }
11 };

N个数中有h个数>=于h,其余的<h。

在纸上写出后便易得,当N个数排序后,在citation[i]的右边(包括它本身),共有N-i个数,这些数均>=citation[i],即有N-i个数>=citation[i],使h=N-i,如果此时citation[i]>=N-i,那么必定有N-i个数>=N-i,此时N-i就是要求的h。因为h取最大值,所以i从0开始。

 

 

追加:

发现一个漏洞,当输入[0]时,照理来说是没法return的,但是不知为何LeetCode替我return了0……

正确代码:

 1 class Solution {
 2 public:
 3     int hIndex(vector<int>& citations) {
 4         sort(citations.begin(), citations.end());
 5         for(int i = 0; i < citations.size(); ++i){
 6             if(citations[i] >= citations.size() - i)
 7                 return citations.size() - i;
 8         }
 9         return 0;
10         
11     }
12 };

 

以上是关于LeetCode 274. H-Index的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode #274 H-Index

[LeetCode] 274. H-Index Java

LeetCode OJ 274. H-Index

[LeetCode] 274. H-Index

[LeetCode] 274. H-Index H指数

[Leetcode] Sort, Hash -- 274. H-Index