[알고리즘] 이진 탐색

June·2021년 1월 30일
0

알고리즘

목록 보기
59/260

이진 탐색

내 풀이

class Solution:
    def search(self, nums: List[int], target: int) -> int:
        low, high = 0, len(nums) - 1
        while low <= high:
            mid = (low + high) // 2
            if nums[mid] == target:
                return mid
            elif nums[mid] > target:
                high = mid -1
            elif nums[mid] < target:
                low = mid + 1
        return -1

책 풀이

class Solution:
    def search(self, nums: List[int], target: int) -> int:
        index = bisect.bisect_left(nums, target)
        
        if index < len(nums) and nums[index] == target:
            return index
        
        else:
            return -1

이진 탐색 모듈을 이용했다.

0개의 댓글