From 7d349f8beb4daedebb5f51eed704bee8de425fe9 Mon Sep 17 00:00:00 2001 From: chimoski Date: Mon, 17 Oct 2022 07:27:10 +0100 Subject: [PATCH] added two-crystal-balls algo --- Searching/Ternary-Search/Ternary-searchh.js | 0 .../Two-crystal_ball/two_crystal_balls.js | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 Searching/Ternary-Search/Ternary-searchh.js create mode 100644 Searching/Two-crystal_ball/two_crystal_balls.js diff --git a/Searching/Ternary-Search/Ternary-searchh.js b/Searching/Ternary-Search/Ternary-searchh.js new file mode 100644 index 0000000..e69de29 diff --git a/Searching/Two-crystal_ball/two_crystal_balls.js b/Searching/Two-crystal_ball/two_crystal_balls.js new file mode 100644 index 0000000..908e6d7 --- /dev/null +++ b/Searching/Two-crystal_ball/two_crystal_balls.js @@ -0,0 +1,18 @@ +function two_crystal_balls(breaks) { + const jumpAmount = Math.floor(Math.sqrt(breaks.length)); + let i = jumpAmount; + for (; i < breaks.length; i++) { + if (breaks[jumpIndex] === true) { + break; + } + i -= jumpAmount; + for (let j = 0; j < jumpAmount && i < breaks.length; j++, i++) { + if (breaks[jumpIndex] === true) { + if (breaks[i]) { + return i; + } + } + return -1; + } + } +}