每日一题 【每日一题】排序数组中的元素 -Python-20211017

Jack · 2021年10月17日 · 最后由 Jack 回复于 2021年10月18日 · 47 次阅读
本帖已被设为精华帖!
  1. 问题描述: 在一个排好序的数组 A 中找到 i,使得 A[i] 最接近目标数 target,输出 i
  2. 问题示例: 输入: [1, 2, 3] target=2 输出: 1
Jack 将本帖设为了精华贴 10月17日 21:09

参考代码:

class Solution:
    def findPosition(self, A, target):
        if not A:
            return -1
        start, end = 0, len(A) - 1
        while start + 1 < end:
            mid = start + (end - start)//2
            if A[mid]<target:
                start = mid
            elif A[mid]>target:
                end = mid
            else:
                return mid
        if target -A[start]< A[end] - target:
            return start
        else:
            return end
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册