35. Search Insert Position (搜索插入位置)

更新於 發佈於 閱讀時間約 1 分鐘


英文版點我中文版點我


↑看個小廣告,支持好內容↑



給定的陣列已經 sorted,又要求 O(logn) 執行完,沒有懸念就是 Binary Search 了,我們先套上大致的模板看看:

let left=0, right=nums.length-1;

while(left<right){
let mid=left+Math.floor((right-left)/2);
// 如果中間項仍小於目標,左半邊都不用找了
if(nums[mid]<target){
left=mid+1;
}else{
right=mid;
}
}


接下來才是重點,思考看看:這樣輸出的 left 會代表什麼?

left 代表的是「首個不小於目標的 index 值」,假設第一項就大於目標,自然插入的位置為 0,如果剛好等於目標,根據題意我們也要輸出 0,到這都沒問題。


考慮另一種極端狀況,要是最後一項都還小於目標呢?

nums=[1,3,5,6], target=7  // 輸出: 4​

那就形同要在陣列多 push 一項,而這和 left 回傳給我們的 3 不符了。


二分搜尋很常敗在這種邊界條件,請務必釐清 return 值是否滿足題意以及各種你舉得出的狀況 XD



  • 本題分類標籤:ArrayBinary Search
  • 本題正解率=45.6%

❤️ 若內容對你實用,歡迎追蹤本專題,或小額贊助支持~
⭐ 這是我的第 22 篇刷題筆記,完整解題索引看這裡 → Here


avatar-img
54會員
59內容數
我要成為 LeetCode 王!快跟我一起踏上旅程!
留言
avatar-img
留言分享你的想法!
LeetCode King 的其他內容
給你一堆字母請你湊出單字,Scramble 貌似也是這樣玩的 (?
總是記不順雙指針法的程序?畫圖跑一次給你看!
班上闖來了一個陌生人!該如何快狠準揪出他?這道經典考題的解法,遠比你想的還要多種 ......
給你一堆字母請你湊出單字,Scramble 貌似也是這樣玩的 (?
總是記不順雙指針法的程序?畫圖跑一次給你看!
班上闖來了一個陌生人!該如何快狠準揪出他?這道經典考題的解法,遠比你想的還要多種 ......
你可能也想看
Google News 追蹤
Thumbnail
隨著年齡增長,消費習慣悄然改變,從年輕時的追求物質享受,到現在更注重時間、體驗和服務。文章分享了三個消費習慣的轉變:1. 時間比金錢更珍貴;2. 出國旅遊的體驗更豐富;3. 物質消費減少,體驗與服務更重要。文章最後強調金錢是工具而非目的,消費應追求長遠價值和內心滿足感。
今天2025-03-14,開啟個人第一篇文章
第三十五章:雷神出沒 隨著紅眼軍團的攻勢越來越逼近,學院內的氣氛變得越發緊張。每個人都在準備迎接那場注定會改變命運的戰爭,而威利與蘿兒的關係也在無數的矛盾中悄然發生著變化。 然而,當一切似乎已經陷入無解的死局時,學院的大門外突然傳來一陣震耳欲聾的雷鳴聲。那聲音猶如末日來臨的預兆,讓所有人都不由自
給定一個升序排序的整數數組 nums 和一個目標值 target,請找出目標值應插入的位置,保證插入後數組仍然是有序的。 必須設計一個演算法,其時間複雜度為 O(log n)。
Thumbnail
SearchGPT 推出後,經營 SEO 要關注哪些重點? 🔰 (1) Bing 的排名結果變得更加重要 如圖可知,ChatGPT 搜尋的是 Bing 的結果 因此,除了使用 GSC,Bing Webmaster 也要學會使用 🔰 (2) 搜尋結果的排名,還是非常重要 由於 C
Thumbnail
利用文字紀錄,明確寫下自己的採購項目......
Thumbnail
Leetcode 精選75題 題目與題解 熱門考點 目錄 (持續更新中) 建議從左側目錄 或者 按Ctrl+F輸入關鍵字進行搜尋
Thumbnail
接著介紹可以尋找文字的函式:FIND 跟 SEARCH。這兩個函式都會回傳指定文字第一次出現的位置,而這位置會以數字表示。
Thumbnail
題目敘述 題目會給定我們兩個字串。 第一個是指定順序的字串order。 第二個是輸入字串s。 要求我們依據order給定的順序,重新排列s。 如果出現order中沒有出現的字母,任意位置皆可。 合法答案可能不只一組,輸出其中一種即可。 題目的原文敘述 測試範例 Example
Thumbnail
隨著年齡增長,消費習慣悄然改變,從年輕時的追求物質享受,到現在更注重時間、體驗和服務。文章分享了三個消費習慣的轉變:1. 時間比金錢更珍貴;2. 出國旅遊的體驗更豐富;3. 物質消費減少,體驗與服務更重要。文章最後強調金錢是工具而非目的,消費應追求長遠價值和內心滿足感。
今天2025-03-14,開啟個人第一篇文章
第三十五章:雷神出沒 隨著紅眼軍團的攻勢越來越逼近,學院內的氣氛變得越發緊張。每個人都在準備迎接那場注定會改變命運的戰爭,而威利與蘿兒的關係也在無數的矛盾中悄然發生著變化。 然而,當一切似乎已經陷入無解的死局時,學院的大門外突然傳來一陣震耳欲聾的雷鳴聲。那聲音猶如末日來臨的預兆,讓所有人都不由自
給定一個升序排序的整數數組 nums 和一個目標值 target,請找出目標值應插入的位置,保證插入後數組仍然是有序的。 必須設計一個演算法,其時間複雜度為 O(log n)。
Thumbnail
SearchGPT 推出後,經營 SEO 要關注哪些重點? 🔰 (1) Bing 的排名結果變得更加重要 如圖可知,ChatGPT 搜尋的是 Bing 的結果 因此,除了使用 GSC,Bing Webmaster 也要學會使用 🔰 (2) 搜尋結果的排名,還是非常重要 由於 C
Thumbnail
利用文字紀錄,明確寫下自己的採購項目......
Thumbnail
Leetcode 精選75題 題目與題解 熱門考點 目錄 (持續更新中) 建議從左側目錄 或者 按Ctrl+F輸入關鍵字進行搜尋
Thumbnail
接著介紹可以尋找文字的函式:FIND 跟 SEARCH。這兩個函式都會回傳指定文字第一次出現的位置,而這位置會以數字表示。
Thumbnail
題目敘述 題目會給定我們兩個字串。 第一個是指定順序的字串order。 第二個是輸入字串s。 要求我們依據order給定的順序,重新排列s。 如果出現order中沒有出現的字母,任意位置皆可。 合法答案可能不只一組,輸出其中一種即可。 題目的原文敘述 測試範例 Example