当前位置: 首页 > article >正文

力扣274. H 指数

给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数

根据维基百科上 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(vector<int>& citations) {
        int hmax = 0;
        int i = citations.size()-1;
        
        sort(citations.begin(), citations.end());

        while(i >= 0 && citations[i] > hmax){
            hmax++;
            i--;
        }

        return hmax;
    }
};

解题思路:

(1)使用排序,将数组从小到大排序。

(2)从后往前遍历,若存在一个大于 hmax,则 hmax++。


http://www.kler.cn/a/447533.html

相关文章:

  • 周末总结(2024/12/21)
  • SQL语句自动加上了LIMIT 10,导致报错
  • React:闭包陷阱产生和解决
  • 智能工厂的设计软件 三种处理单元(NPU/GPU/CPU)及其在深度学习框架中的作用 之4(百度文库答问 之2)
  • 谷歌浏览器的扩展市场使用指南
  • 基于Springboot人口老龄化社区服务与管理平台【附源码】
  • 【八大排序(二)】希尔排序
  • 5_HTML5 SVG (1) --[HTML5 API 学习之旅]
  • 深入理解贪心算法:核心概念与实践
  • 类的动态演绎:程序运行中的生命绽放
  • 多模态医学图像融合概述
  • windows C#-静态构造函数
  • 计算机网络之多路转接epoll
  • bestphp‘s revenge
  • linux内核网络分层概述
  • Vue中<script setup></script>的主要语法元素和特性
  • redis开发与运维-redis02-redis数据类型与命令总结
  • 使用C++调用YOLOv8模型的一般步骤
  • 首次成功尝试!使用多模态无监督聚类的语义发现
  • MySQL -- 库的相关操作
  • 性能】JDK和Jmeter的安装与配置
  • 12爬虫:scrapy爬虫框架
  • Day13 苍穹外卖项目 工作台功能实现、Apache POI、导出数据到Excel表格
  • 本地部署 MLflow 服务
  • 中宇联与亚马逊云科技共同推出Well-Architected联合解决方案
  • redis开发与运维-redis03-redis其他数据类型与命令(Bitmaps++HyperLogLog+GEO)