LeetCode 704. Binary Search

leehangeul·2021년 5월 19일
0

LeetCode

목록 보기
3/4
post-thumbnail

이 문제의 의도는 경우의 수를 하나하나 줄여가면서 탐색하는 것이 목적인 문제인 것 같다.
따라서 내가 푼 방법은 문제의 출제 의도에서 벗어난다.
그렇기 때문에 탐색법을 외워두거나 이해하고 있으면 좋을 듯 하다.

  1. 강의 풀이방법
var search = function(nums, target) {
    let left = 0;
    let right = nums.length - 1;

    while(left <= right) {
        let pivot = Math.floor((left + right) / 2);

        if(nums[pivot] === target) return pivot;
        else if(nums[pivot] < target) left = pivot + 1;
        else if(nums[pivot] > target) right = pivot -1;
    }

    return -1;
};
  1. 내 풀이방법
const search = (nums,target) => {
    // let sameNumber = (element) => element === target;
    // if(nums.findIndex(sameNumber)) {
    //     return nums.findIndex(sameNumber);
    // }
    // else {
    //     return -1;
    // }

    return nums.findIndex(v => v === target)
}
profile
풀스택 개발자가 되고싶은 코린이 이한글

0개의 댓글