Python:アルゴリズム(code-kata)



昇順数nums配列と検索するtargetをパラメータとすると、targetがいくつかのindexであることが返されます。

Input: nums = [-1,0,3,5,9,12], target = 9
Output: 4
Input: nums = [-1,0,3,5,9,12], target = 2
Output: -1
설명: 찾지 못하면 -1로 return 해주세요.
モデルの答え:
def search(nums,target):
    left, right = 0, len(nums) - 1
    while left <= right:
        pivot = left + (right - left) // 2
        if nums[pivot] == target:
            return pivot
        if target < nums[pivot]:
            right = pivot - 1
        else:
            left = pivot + 1
    return -1
**上記のコードでは、左が右以下の場合は、左+(右-左)/2を使用して、左と右-左の間にインデックスを作成します.