• 274. H-Index


    Given an array of citations (each citation is a non-negative integer) of a researcher, write a function to compute the researcher's h-index.

    According to the definition of h-index on Wikipedia: "A scientist has index h if h of his/her N papers have at least h citations each, and the other N − h papers have no more than h citations each."

    For example, given citations = [3, 0, 6, 1, 5], which means the researcher has 5 papers in total and each of them had received 3, 0, 6, 1, 5 citations respectively. Since the researcher has 3 papers with at least 3 citations each and the remaining two with no more than 3 citations each, his h-index is 3.

    Note: If there are several possible values for h, the maximum one is taken as the h-index.

    代码(python实现)

    class Solution(object):
        def hIndex(self, citations):
            """
            :type citations: List[int]
            :rtype: int
            """
            hIndex = 0
            
            if citations is None or len(citations) == 0:
                return 0
                
            if len(citations) == 1:
                if citations[0] == 0:
                    return 0
                else:
                    return 1
        
                
            citations.sort()
            
            q = len(citations) - 1
            count = 1
            
            if citations[0] >= len(citations):
                return len(citations)
            
            while(q >= 0):
                if citations[q] < count or citations[q] == 0:
                    break
                #从右往左扫描,如果count在citations[q - 1]和citations[q]之间,则hIndex = count
                if count >= citations[q - 1] and count <= citations[q]:
                    hIndex = count
                count += 1    
                q -= 1
                   
            return hIndex 
  • 相关阅读:
    Java单链表的实现
    leetcode2
    Spring容器中Bean的生命周期
    my-leetcode
    Map及HashMap原理简述
    网站搭建:服务器+域名+备案
    浅谈X-UA-Compatible&viewport
    Hexo框架搭建个人博客
    Redis安装教程
    MySQL安装教程 --- 解压版
  • 原文地址:https://www.cnblogs.com/bubbleStar/p/6896843.html
Copyright © 2020-2023  润新知