[LeetCode] H-Index II

This problem is designed specifically to use binary search. In fact, in H-Index, someone has already used this idea (you may refer to this post :-))

The code is as follows.

 1 class Solution {
 2 public:
 3     int hIndex(vector<int>& citations) {
 4         int n = citations.size(), l = 0, r = n - 1;
 5         while (l <= r) {
 6             int m = l + (r - l) / 2;
 7             if (citations[m] >= n - m) r = m - 1;
 8             else l = m + 1;
 9         }
10         return n - r - 1;
11     }
12 };

 

posted @ 2015-09-04 22:19  jianchao-li  阅读(251)  评论(0编辑  收藏  举报