問題描述:
給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。 如果目標值不存在於陣列中,返回它將會被按順序插入的位置。示例1:可以假設陣列中無重複元素。
輸入:[1,3,5,6],5考慮的時候想的很簡單,因為是有序陣列,直接暴力遍歷過去就可以了,時間複雜度o(n)。看了題解裡的提示才發現原來還能用二分法,時間複雜度可以簡化到o(logn)。輸出:2
暴力遍歷第一次提交的時候還忘記考慮target小於nums[0]的情況emmm…
int
searchinsert
(int
* nums,
int numssize,
int target)
}return index;
}
LeetCode刷題日記 35 搜尋插入位置
第一次用暴力法寫出來的程式再用時擊敗了96.1 的使用者,同時在記憶體擊敗了98.15 的使用者,不過可能主要原因是這是一道考察二分法的題目。突然發現相同 多次提交,執行用時會發生變化.震驚 題目要求,給出乙個排序陣列和乙個目標值,若在陣列中能找到目標值,則返回該目標值在陣列中的下標,若陣列中不存在...
leetcode刷題之路35 搜尋插入位置
給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。你可以假設陣列中無重複元素。示例 1 輸入 1,3,5,6 5 輸出 2 示例 2 輸入 1,3,5,6 2 輸出 1 示例 3 輸入 1,3,5,6 7 輸出 4 示例 4 輸入...
LeetCode刷題筆記第35題
題目描述 給定乙個排序陣列和乙個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。你可以假設陣列中無重複元素。解題思路 最直接的想法就是使用二分查詢,如果有序陣列中含有與target值相等的元素,直接返回對應的索引值 如果沒有則在查詢完畢之後,返回對應...