Leetcode 35. 搜索插入位置 c#

wuchangjian2021-10-27 13:05:52编程学习

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

请必须使用时间复杂度为 O(log n) 的算法。

示例 1:

输入: nums = [1,3,5,6], target = 5
输出: 2
示例 2:

输入: nums = [1,3,5,6], target = 2
输出: 1
示例 3:

输入: nums = [1,3,5,6], target = 7
输出: 4
示例 4:

输入: nums = [1,3,5,6], target = 0
输出: 0
示例 5:

输入: nums = [1], target = 0
输出: 0

  public int SearchInsert(int[] nums, int target)
        {
            int n = nums.Length;
            int left = 0, right = n - 1, ans = n;
            while (left <= right)
            {
                int mid = ((right - left) >> 1) + left;
                if (target <= nums[mid])
                {
                    ans = mid;
                    right = mid - 1;
                }
                else
                {
                    left = mid + 1;
                }
            }
            return ans;

        }

相关文章

HCIP 2

HCIP 2

实验拓扑图如上所示   要求: 1.R4为运营商,...

windows多余服务项的删除方法

 (1)打开注册表,进入 HKEY_L...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。