可以用lower_bound来表示uppper_bound

时间:2018-08-02 19:33:12

标签: c++ stl binary-search

对于数组,我可以始终使用其lower_bound计算数组中数字的upper_bound。

对于ex,我们得到一个数组:   2 3 4 4 4 5 6  我们将发现4的upper_bound位于索引5(2位于第0个索引)。我们可以使用lower_bound(4+1)找到它。

类似地,我可以看到,几乎在每种情况下,如果我们要计算n的upper_bound,那么就可以使用lower_bound(n+1)进行计算。

在任何情况下此属性都不成立。

1 个答案:

答案 0 :(得分:0)

当然,对于某些问题,您也可以通过这种方式获得正确的答案,但是其他一些问题将返回错误的答案,例如以下代码:

FirebaseUser user = await _auth.signInWithCustomToken(token: customToken);

enter image description here

Key = 2147483647,index1 = 3,index2 = 0。

您可以通过index1等于3来判断数组中所有小于键的值,但无法通过“ lower_bound”方式获得正确答案。

对于2147483647 + 1 = -2147483648,它小于数组中的任何元素。