Skip to content

Latest commit

 

History

History
27 lines (24 loc) · 887 Bytes

35.md

File metadata and controls

27 lines (24 loc) · 887 Bytes

题目地址

https://leetcode-cn.com/problems/search-insert-position/

解答

class Solution:
    def searchInsert(self, nums: List[int], target: int) -> int:
        """
            搜索插入位置

            给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引
            如果目标值不存在于数组中,返回它将被按顺序插入的位置,数组中无重复元素
        """
        i, j = 0, len(nums) - 1
        while i <= j:
            in_middle = (j + i) // 2
            if nums[in_middle] == target:
                return in_middle
            elif nums[in_middle] < target:
                if in_middle == len(nums) - 1 or target < nums[in_middle + 1]:
                    return in_middle + 1
                i = in_middle + 1
            else:
                j = in_middle - 1

        return 0