From 517e866fd36300f86db062e578b53302691b7a39 Mon Sep 17 00:00:00 2001 From: Pratik Sanghani Date: Tue, 5 Oct 2021 18:22:47 +0530 Subject: [PATCH] Create BinarySearch.js --- 9_BinarySearch/BinarySearch.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 9_BinarySearch/BinarySearch.js diff --git a/9_BinarySearch/BinarySearch.js b/9_BinarySearch/BinarySearch.js new file mode 100644 index 0000000..12add11 --- /dev/null +++ b/9_BinarySearch/BinarySearch.js @@ -0,0 +1,27 @@ +let BinarySearch = (list,val)=>{ + let left = 0; + let right = list.length - 1; + let mid = Math.floor((left + right) / 2); + + while (list[mid] !== val && left <= right) { + if (val < list[mid]) { + right = mid - 1 + } else { + left = mid + 1 + } + mid = Math.floor((left + right) / 2); + } + if (list[mid] === val) { + return mid; + } else { + return -1 + } + +} +; + +let list = [1,2,3,4,5,6,7,8] +let val = 3; +// should return 2 + +BinarySearch(list, val);