ホームページ  >  記事  >  ウェブフロントエンド  >  rystal ボール検索の問題を Javascript を使用して解決する

rystal ボール検索の問題を 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 
*/

以上がrystal ボール検索の問題を Javascript を使用して解決するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。