首页  >  文章  >  web前端  >  使用 Javascript 解决水晶球搜索问题

使用 Javascript 解决水晶球搜索问题

PHPz
PHPz原创
2024-08-18 00:04:02322浏览

rystal Ball Searching Problem Solved Using Javascript

2 水晶球问题以最小的时间复杂度找到第一个命中。

const arr = [false, false, false, false, true, true, true, true, true, true];

function two_crystal_balls(breaks) {
  const jmpAmount = Math.floor(Math.sqrt(breaks.length));

  let i = jmpAmount;
  for (; i < breaks.length; i += jmpAmount) {
    if (breaks[i]) {
      break;
    }
  }
  console.log(i, "i");

    const updatedPos = i - jmpAmount;

  for (let j = updatedPos; j<= i; j++) {
    if (arr[j]) {
        console.log('Answer ---> ', j);
        return ;
    }
}
  return -1;
}
two_crystal_balls(arr);

/*
Output
6 i
Answer --->  4 
*/

以上是使用 Javascript 解决水晶球搜索问题的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn