Leetcode 275. H-Index II

Follow up for H-Index: What if the citations array is sorted in ascending order? Could you optimize your algorithm?

接上一篇,数组升序排列。

一看就是二分,需要注意边界,仔细想想。

class Solution {
public:
    int hIndex(vector<int>& citations) {
        int mid = -1, l = 0, r = citations.size()-1;
        while(l <= r)
        {
            mid = (l + r) >> 1;
            if(citations.size() - mid == citations[mid]) return citations[mid];
            else if(citations.size() - mid > citations[mid]) l = mid + 1;
            else r = mid - 1;
        }
        return citations.size() - r - 1;
    }
};  

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏计算机视觉与深度学习基础

Leetcode 275. H-Index II

Follow up for H-Index: What if the citations array is sorted in ascending orde...

19760
来自专栏PPV课数据科学社区

【学习】数据分析之Excel数据分组案例详解

提示:使用EXCEL进行数据分组的案例详解,三种方法:IF函数,VLOOKUP函数,LOOKUP函数,回复给邮箱,友情赠送EXCEL文档实例,以后自己套用即可。...

30960
来自专栏决胜机器学习

PHP数据结构(十一) ——图的连通性问题与最小生成树算法(1)

PHP数据结构(十一)——图的连通性问题与最小生成树算法(1) (原创内容,转载请注明来源,谢谢) 一、连通分量和生成树 1、无向图 设E(G)为连通图G的所...

50890
来自专栏Jack-Cui

Day4、Python

题目     一个数如果恰好等于它的因子之和,这个数就成为“完数”。例如6=1+2+3。编程找出1000以内的所有完数。 程序分析     完全数(...

26600
来自专栏应兆康的专栏

100个Numpy练习【4】

翻译:YingJoy 网址: https://www.yingjoy.cn/ 来源: https://github.com/rougier/numpy-100...

49580
来自专栏章鱼的慢慢技术路

Direct3D 11 Tutorial 7:Texture Mapping and Constant Buffers_Direct3D 11 教程7:纹理映射和常量缓冲区

在上一个教程中,我们为项目引入了照明。 现在我们将通过向我们的立方体添加纹理来构建它。 此外,我们将介绍常量缓冲区的概念,并解释如何使用缓冲区通过最小化带宽使用...

11240
来自专栏计算机视觉与深度学习基础

Leetcode 130 Surrounded Regions

Given a 2D board containing 'X' and 'O' (the letter O), capture all regions su...

21250
来自专栏数据结构与算法

1080 线段树练习 单点修改及区间查询

1080 线段树练习 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 一...

30640
来自专栏极客猴

Django 学习笔记之模型高级用法(下)

除了抽象模型,在模型中定义的字段都会成为表中的列。如果我们需要给模型指定其他一些信息,例如排序方式、数据库表名等,就需要用到 Meta。Meta 是一个可选的类...

10120
来自专栏数据结构与算法

BZOJ5249: [2018多省省队联测]IIIDX(线段树 贪心)

不难发现题目给出的是一个树,其中\(\frac{i}{K}\)是\(i\)的父亲节点

10310

扫码关注云+社区

领取腾讯云代金券