Leetcode35. 挿入位置の検索(python 3)


Leetcode35. 挿入位置の検索
トピックの説明:ソート配列とターゲット値を指定し、配列内でターゲット値を見つけ、インデックスを返します.ターゲット値が配列に存在しない場合は、順番に挿入される位置を返します.
配列に重複要素がないと仮定できます.例:例1:
入力:[1,3,5,6],5出力:2例2:
入力:[1,3,5,6],2出力:1例3:
入力:[1,3,5,6],7出力:4例4:
入力:[1,3,5,6],0出力:0解法1(python)
class Solution:
    def searchInsert(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: int
        """
        
        index = 0
        for i in nums:
            if target > i:
                index += 1
            else:
                return index
        return index

解法2:(python)
class Solution:
    def searchInsert(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: int
        """
        low = 0
        high = len(nums)
        while low < high:
            mid = low + (high - low) // 2
            if nums[mid] < target:
                low = mid + 1
            elif nums[mid] > target:
                high = mid
            else:
                return mid
        return low