二分法查找错误版本
没有注释因为自己还不是很明白
明天修改备注再捋一次 发
fine good night
代码
<script>
let array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
//模拟生成一个1-10间的随机整数模拟这个数字为正确的版本
let result = Math.ceil((Math.random()) * 10)
console.log("result", result)
function isBadVersion (version) {
if(result <= version){
return true
}else{
return false
}
}
var findWrongVersion = function (versionList) {
let left = 1
let rigth = versionList.length
while(left < rigth){
const midle = Math.floor(left + (rigth - left)/2)
// debugger
if(isBadVersion(midle)){
rigth = midle
}else{
left = midle + 1
}
}
return left
}
console.log(findWrongVersion(array))
</script>