LeetCode 275. H指数 II(二分查找)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 275. H指数 II(二分查找)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
給定一位研究者論文被引用次數的數組(被引用次數是非負整數),數組已經按照升序排列。編寫一個方法,計算出研究者的 h 指數。
h 指數的定義: “h 代表“高引用次數”(high citations),一名科研人員的 h 指數是指他(她)的 (N 篇論文中)至多有 h 篇論文分別被引用了至少 h 次。(其余的 N - h 篇論文每篇被引用次數不多于 h 次。)"
示例: 輸入: citations = [0,1,3,5,6] 輸出: 3 解釋: 給定數組表示研究者總共有 5 篇論文,每篇論文相應的被引用了 0, 1, 3, 5, 6 次。由于研究者有 3 篇論文每篇至少被引用了 3 次,其余兩篇論文每篇被引用不多于 3 次,所以她的 h 指數是 3。說明: 如果 h 有多有種可能的值 ,h 指數是其中最大的那個。進階: 本題中的 citations 數組是保證有序的。 你可以優化你的算法到對數時間復雜度嗎?來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/h-index-ii
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
類似題目:274. H指數
本題已排序,直接一個一個的搜索,或者二分搜索
class Solution { public:int hIndex(vector<int>& citations) {int i = citations.size()-1, papers = 0;while(i >= 0 && papers < citations[i]){papers++;i--;}return papers;} };- 二分查找
總結
以上是生活随笔為你收集整理的LeetCode 275. H指数 II(二分查找)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LintCode 795. 4种独特的路
- 下一篇: LeetCode 648. 单词替换(T