leetcode 35.搜索插入位置

⭐️ 题目描述

leetcode 35.搜索插入位置_第1张图片


leetcode链接:搜索插入位置

ps: 题目给的是一个有序的数组,所以采用二分查找算法最优,只需要计算出如果目标值不存在则返回按顺序插入的位置,其实刚好是 left 位置。

代码:

int searchInsert(int* nums, int numsSize, int target){
    // 二分
    int left = 0;
    int right = numsSize - 1;
    while (left <= right) {
        int midIndex = left + ((right - left) >> 1);
        if (nums[midIndex] > target) {
            right = midIndex - 1;
        } else if (nums[midIndex] < target) {
            left = midIndex + 1;
        } else {
            return midIndex;
        }
    }

    return left;
}

你可能感兴趣的:(刷题,leetcode,学习,二分查找)