题解 | #牛群的位置排序#

考察知识点

  • 二分查找
  • STL使用(lower_bound()函数)

题目解析

题意

在一个递增排序的数组labels中以时间复杂度为O(log n)的算法查找给定的目标值target的位置,如果不存在,返回它按顺序插入的位置。

解析

根据递增排序的数组、时间复杂度O(log n)可知二分查找算法完全符合这一性质。 此题采用C++ STL标准库给出了lower_bound() 函数用于在指定区域内查找不小于目标值的第一个元素。

AC code(C++)

class Solution {
public:
    int searchInsert(vector<int>& labels, int target) {
        int index = 0;
        index = lower_bound(labels.begin(),labels.end(),target)-labels.begin();
        return index;
    }
};
全部评论

相关推荐

预计下个星期就能开奖吧,哪位老哥来给个准信
华孝子爱信等:对接人上周说的是这周
点赞 评论 收藏
分享
hso_:哈哈哈哈哈哈我没offer一样在同一道题开喷了
投递深圳同为数码等公司10个岗位
点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务