๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿƒ algorithm/leetcode

LeetCode 704 - Binary Search (Easy)

by HandHand 2023. 5. 14.

 

๐Ÿ’ก ๋ฌธ์ œ

LeetCode - 704๋ฒˆ

 

๐ŸŽฏ ํ’€์ด ๊ณผ์ •

์ •๋ ฌ๋œ ๋ฐฐ์—ด์—์„œ ํŠน์ • target ์˜ index ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

์ด๋ถ„ ํƒ์ƒ‰ ์„ ์ด์šฉํ•˜๋ฉด ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๐Ÿ‘จโ€๐Ÿ’ป ์ฝ”๋“œ

/**
 * @param {number[]} nums
 * @param {number} target
 * @return {number}
 */
var search = function(nums, target) {
    let head = 0
    let tail = nums.length - 1
    let answer = -1

    while (head <= tail) {
        const mid = Math.floor((head + tail) / 2)

        if (nums[mid] < target) {
            head = mid + 1
        } else if (nums[mid] > target) {
            tail = mid - 1
        } else {
            answer = mid
            break
        }
    }

    return answer
};
๋ฐ˜์‘ํ˜•

๐Ÿ’ฌ ๋Œ“๊ธ€