Add ES6 Examples to all chapters (#38)
* add ES6 example for binary search * add ES6 example for selection sort * add ES6 example for countdown * add ES6 example for greet * add ES6 example for factorial * edit ES6 example for quicksort * add ES6 example for loop sum * add ES6 example for recursive sum * add ES6 example for recursive count * add ES6 example for recursive max * add ES6 example for price of groceries * add ES6 example for check voter * add ES6 example for breadth-first search * add ES6 example for dijkstras algorithm * edit ES6 example for dijkstras algorithm * edit ES6 example for set covering * add ES6 example for longest common subsequence
This commit is contained in:
committed by
Aditya Bhargava
parent
1a81d3e6b2
commit
ec2890a93d
25
01_introduction_to_algorithms/ES6/01_binary_search.js
Normal file
25
01_introduction_to_algorithms/ES6/01_binary_search.js
Normal file
@@ -0,0 +1,25 @@
|
||||
const binarySearch = (list, item) => {
|
||||
let low = 0;
|
||||
let high = list.length - 1;
|
||||
|
||||
while (low <= high) {
|
||||
const mid = Math.floor((low + high) / 2);
|
||||
const guess = list[mid];
|
||||
|
||||
if (guess === item) {
|
||||
return mid;
|
||||
}
|
||||
if (guess > item) {
|
||||
high = mid - 1;
|
||||
} else {
|
||||
low = mid + 1;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
};
|
||||
|
||||
const myList = [1, 3, 5, 7, 9];
|
||||
|
||||
console.log(binarySearch(myList, 3)); // 1
|
||||
console.log(binarySearch(myList, -1)); // null
|
||||
Reference in New Issue
Block a user