leetcode [35]搜索插入位置/Search Insert Position 优雅的暴力可能比二分查找效率更高

在这里插入图片描述

题目地址

https://leetcode-cn.com/problems/search-insert-position/

思路

这道题目其实是一道很简单的题,但是为什么通过率相对来说并不高呢,我理解是大家对 边界处理的判断有所失误,导致的。

我这里给出简洁的暴力枚举的方式,暴力解题 不一定时间消耗就非常高,关键看实现的方式,就像是二分查找时间消耗不一定就很低,是一样的。

我的暴力解法效率如下:

在这里插入图片描述

解法

class Solution {
public:
    int searchInsert(vector<int>& nums, int target) {
        for (int i = 0; i < nums.size(); i++) {
            if (nums[i] >= target) { // 一旦发现大于或者等于target的num[i],那么i就是我们要的结果
                return i;
            }
        }
        return nums.size(); // 如果target是最大的,或者 nums为空,则返回nums的长度
    }
};

我是代码君,在BAT从事技术研发多年,利用工作之余重刷leetcode,更多原创文章欢迎关注「代码随想录」。

发布了236 篇原创文章 · 获赞 251 · 访问量 27万+

猜你喜欢

转载自blog.csdn.net/youngyangyang04/article/details/105462716