请选择 进入手机版 | 继续访问电脑版
查看: 443|回复: 0

[运维管理] [LeetCode] H-Index

688

主题

688

帖子

2083

积分

猿er

Rank: 1

积分
2083
发表于 2016-8-14 17:50:13
<无详细内容>
  1. class Solution {
  2. public:
  3. int hIndex(vector<int>& citations) {
  4. sort(citations.begin(), citations.end(), [](const int &a, const int &b){return a > b; });
  5. int i = 0;
  6. for (; i < citations.size(); ++i)
  7. if (citations[i] <= i)
  8. break;
  9. return i;
  10. }
  11. };
复制代码
  1. class Solution {
  2. public:
  3. int hIndex(vector<int>& citations) {
  4. int n = citations.size();
  5. int *count = new int[n + 1]{0};
  6. for (int i = 0; i < n; ++i)
  7. if (citations[i] > n)
  8. count[n]++;
  9. else
  10. count[citations.at(i)]++;
  11. for (int i = n, papers = 0; i >= 0; i--){
  12. papers += count[i];
  13. if (papers >= i)
  14. return i;
  15. }
  16. return 0;
  17. }
  18. };
复制代码


回复

使用道具 举报