題目描述:
Follow up for H-Index: What if the citations array is sorted in ascending order? Could you optimize your algorithm?
與H-Index的區別就是,這個數組是倒序排序好的。
思路:
省去了排序的步驟,直接從數組尾部向前遍歷就可以了。
其余思路與H-index相同。
實現代碼:
public class Solution {
public int HIndex(int[] citations)
{
if(citations.Length == 0){
return 0;
}
var sum = 0;
var j = 0;
for(var i = citations.Length - 1;i >= 0; i--){
if(j < citations[i]){
sum ++;
}
j++;
}
return sum;
}
}