用C++寫二分查找了!【手繪漫畫】圖解LeetCode之搜索插入位置(LeetCode 35)

在這裏插入圖片描述

圖解LeetCode刷題計劃

1、寫在前面

手繪漫畫系列正式上線!!!“圖解LeetCode刷題計劃” 來了!!!

今天是第十五期,爭取每天一期,最多兩天一期,歡迎大家監督我。。。
在這裏插入圖片描述
把練手的幾個二分法寫一下,開始用C++寫代碼了,C語言確實很鍛鍊能力,但是有點代碼太多了。。。

模板彙總:

在這裏插入圖片描述
在這裏插入圖片描述

2、題目

首先看一下題目,
在這裏插入圖片描述
正常的二分查找,除了兩個特殊的條件,即,如果數組中沒有 target,小於最小值或者大於最大值,則返回插入的位置。
在這裏插入圖片描述

3、正文

能找到:
在這裏插入圖片描述
找不到:
在這裏插入圖片描述
在這裏插入圖片描述

4、代碼

class Solution {
public:
    int searchInsert(vector<int>& nums, int target) {
        if(nums.empty()||nums.back()<target) return nums.size();

        int left=0;
        int right=nums.size()-1;
        while(left<right){
            int mid=left+right>>1;
            if(nums[mid]>=target){
                right=mid;
            }
            else{
                left=mid+1;
            }
        }
        return left;
    }
};

在這裏插入圖片描述
在這裏插入圖片描述

如果有幸幫到你,請幫我點個【贊】,給個【關注】!如果能順帶【評論】給個鼓勵,我將不勝感激。

如果想要更多的資源,歡迎關注 @我是管小亮,文字強迫症MAX~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章