Java教程

算法:搜索插入的位置

本文主要是介绍算法:搜索插入的位置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中, // 返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。

例:[1,3,5,6], 5 返回2

func searchInsert(nums []int, target int) int {
    n := len(nums)
    left, right := 0, n - 1

    ans := n

    for left <= right {
        mid := (right - left) >> 1 + left
        if target <= nums[mid] {
            ans = mid
            right = mid - 1
        } else {
            left = mid + 1
        }
    }
    return ans
}

 

这篇关于算法:搜索插入的位置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!