search-array-element
Version:
Search ele efficiently with binary search
47 lines (39 loc) • 1.01 kB
JavaScript
// Binary Search Algorithm
function binarySearch(arr, target) {
let left = 0;
let right = arr.length - 1;
while (left <= right) {
let mid = Math.floor((left + right) / 2);
if (arr[mid] === target) {
return mid; // Target found
} else if (arr[mid] < target) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return -1; // Target not found
}
// Bubble Sort Algorithm
function bubbleSort(arr) {
let n = arr.length;
for (let i = 0; i < n - 1; i++) {
for (let j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];
}
}
}
return arr;
}
// Factorial using Recursion
function factorial(n) {
if (n === 0) return 1;
return n * factorial(n - 1);
}
// Exporting the functions for NPM
module.exports = {
binarySearch,
bubbleSort,
factorial
};