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

论文引用h指数

文章目录

  • 1、描述
  • 2、关键字
  • 3、思路
  • 4、notes
  • 5、复杂度
  • 6、code

1、描述

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

根据维基百科上 h 指数的定义:h 代表“高引用次数” ,一名科研人员的 h 指数 是指他(她)至少发表了 h 篇论文,并且 至少 有 h 篇论文被引用次数大于等于 h 。如果 h 有多种可能的值,h 指数 是其中最大的那个。
链接

2、关键字

论文被引用的h指数

3、思路

1、直接把每篇论文的引用次数展开,构成一行,之后竖着统计检查,从左往右,更新h
2、进行排序,之后从大到小遍历,
需要满足2个条件
条件一:有至少h篇
条件二:h篇中每篇至少引用h次

排好序,又从大到小遍历,h++保证条件一,
其中直接比较判断保证条件二

4、notes

5、复杂度

时间:
方法一:O(N2)
方法二:O(nlogN)
空间:
方法1:O(N2)
方法二:O(n)数组长度

6、code

# 方法一:
class Solution {
public:int hIndex(vector<int>& citations) {int n = citations.size();int max_n = 0;for (auto r : citations) { // 求出最多引用次数,作为列if (r > max_n) {max_n = r;}}int res = 0;vector<vector<int>> vec(n, vector<int>(max_n, 0));for(int i = 0; i < n; i++) {  // 初始化vec二维数组for(int j = 0; j < max_n; j++) {if(j < citations[i] ) {vec[i][j] = 1;} else{break;}}}for(int j = 0; j < max_n; j++) { // 竖着看,去检查int tem = 0;for(int i = 0; i < n; i++) {if(vec[i][j] == 1) {tem++;}}if(tem >= j + 1 && j + 1 > res) { // j从0开始,所以j+1res = j + 1;}}return res;}
};方法二:
class Solution {
public:int hIndex(vector<int>& citations) {sort(citations.begin(), citations.end());int n = citations.size() - 1;int h = 0;while(n >= 0) {if(citations[n] > h) { // 这里是 > 没有=h++;}n--;}return h;}
};
http://www.lryc.cn/news/395541.html

相关文章:

  • 四、Python日志系统之日志文件的备份和删除
  • Android Camera Framework:从基础到高级
  • 面向 Rust 新手的 Cargo 教程:轻松上手
  • MSPM0G3507——时钟配置(与32关系)
  • Linux 创建新虚拟机的全过程图解
  • 【已解决】腾讯云安装了redis,但是本地访问不到,连接不上
  • python批量去除图片文字水印
  • C++ Qt 自制开源科学计算器
  • 相机光学(二十八)——感光度(ISO)
  • 基于全国产复旦微JFM7K325T+ARM人工智能数据处理平台
  • HarmonyOS Next应用开发之系统概述
  • RedHat运维-Linux SSH基础2-基于公钥认证
  • 机器学习模型运用在机器人上
  • 振弦采集仪在大型工程安全监测中的作用与意义
  • CVE-2024-36991:Splunk Enterprise任意文件读取漏洞复现 [附POC]
  • Python的utils库详解
  • 基于 Qt、FFmpeg 和 OpenGL 开发跨平台安卓实时投屏软件 QtScrcpy
  • LabVIEW光谱测试系统
  • SpringBoot使用@RestController处理GET和POST请求
  • Kudu分区策略
  • spring的bean注册
  • 权限控制权限控制权限控制权限控制权限控制
  • JavaWeb系列二十一: 数据交换和异步请求(JSON, Ajax)
  • layui项目中的layui.define、layui.config以及layui.use的使用
  • ChatGPT对话:Scratch编程中一个单词,如balloon,每个字母行为一致,如何优化编程
  • HTML【详解】超链接 a 标签的四大功能(页面跳转、页内滚动【锚点】、页面刷新、文件下载)
  • Nginx+Tomcat群集
  • DBA 数据库管理 部署Mysql 服务,基础查询
  • AIGC:构筑创意新时代的神奇力量
  • 前端Din字体和造字工房力黑字体文件