力扣 中等 275.H指数
题目介绍
题解
h指数不一定都满足citations[mid] == n - mid,例如[0,1,4,5,6]的h指数是3。
题目说了用对数时间复杂度来实现,说明一定是用二分法,草纸上推导一下即可得出以下代码。
class Solution {
public int hIndex(int[] citations) {
int l = 0, n = citations.length, r = n - 1,mid = 0;
while(l <= r){
mid = (l + r)/2;
if(citations[mid] == n - mid){
return n - mid;
}else if(citations[mid] > n - mid){
r = mid - 1;
}else{
l = mid + 1;
}
}
return n - l;
}
}
原文地址:https://blog.csdn.net/qq_51352130/article/details/142533286
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!