NZ
Size: a a a
NZ
VG
E
NZ
МС
$
N
МС
function indexEqualsValue(a, beginIndex = 0) {
let low = 0
let high = a.length - 1
while (low <= high) {
const mid = Math.ceil((low + high) / 2)
if (mid === a[mid]) {
const preMid = indexEqualsValue(a.slice(low, mid))
if (preMid !== -1) {
return low + preMid
}
return mid
}
if (mid > a[mid]) {
high = mid - 1
}
else {
low = mid + 1
}
}
return -1
}
E
E
NZ
E
$
E
E
s
NZ
А
$
M