JSFiddle - React, Tailwind, and code Playground

by brigand

JavaScript

var primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97];

var check = 67;

function binary_search(arr, query) {
  let min = 0
  let max = arr.length
  let i = Math.floor((min + max) / 2)

  console.log(`min: ${min} max: ${max} i: ${arr[i]} q: ${query} ${arr[i] == query}`)

  if (query == arr[i]) {
    return true
  }

  if (arr[i] > query) {
    return binary_search(arr.slice(min, i), query)
  } else if (arr[i] < query) {
    return binary_search(arr.slice(i, max), query)
  }

}

console.log(binary_search(primes, check))