Skip to content

Instantly share code, notes, and snippets.

@shettayyy
Last active May 24, 2022 17:21
Show Gist options
  • Save shettayyy/55f89b662cfb334d8a49cbb2e67658a4 to your computer and use it in GitHub Desktop.
Save shettayyy/55f89b662cfb334d8a49cbb2e67658a4 to your computer and use it in GitHub Desktop.
Write a function to search target in nums
// Binary Search Easy 1
// Given an array of integers nums which is sorted in ascending order, and an integer target, write a function to search target in nums. If target exists, then return its index. Otherwise, return -1.
// You must write an algorithm with O(log n) runtime complexity.
// Example 1:
// Input: nums = [-1,0,3,5,9,12], target = 9
// Output: 4
// Explanation: 9 exists in nums and its index is 4
// Example 2:
// Input: nums = [-1,0,3,5,9,12], target = 2
// Output: -1
// Explanation: 2 does not exist in nums so return -1
// Constraints:
// 1 <= nums.length <= 104
// -104 < nums[i], target < 104
// All the integers in nums are unique.
// nums is sorted in ascending order.
const nums = [-1, 0, 3, 5, 9, 12];
function getIndex(numList, target) {
let left = 0;
let right = numList.length - 1
while (left <= right) {
const pivotal = Math.floor((right + left) / 2)
if(target === numList[pivotal]) {
return pivotal
}
if(target < numList[pivotal]) {
right = pivotal -1
} else {
left = pivotal + 1
}
}
return -1
}
console.log(getIndex(nums, 9))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment