35. 搜索插入位置
問題
給定一個排序數(shù)組和一個目標(biāo)值,在數(shù)組中找到目標(biāo)值,并返回其索引。如果目標(biāo)值不存在于數(shù)組中,返回它將會被按順序插入的位置。
你可以假設(shè)數(shù)組中無重復(fù)元素。
示例 1:
輸入: [1,3,5,6], 5
輸出: 2
示例 2:
輸入: [1,3,5,6], 2
輸出: 1
示例 3:
輸入: [1,3,5,6], 7
輸出: 4
示例 4:
輸入: [1,3,5,6], 0
輸出: 0
解答
此題沒有難度,遍歷數(shù)組,分為兩種情況
- 數(shù)組當(dāng)前值
nums[i]
大于等于target
,此時,直接返回i即可,因?yàn)椴还苁谴笥谶€是等于,target的位置都是在i處 - 遍歷后仍然沒有返回,此時說明
target
大于全部的nums
中的數(shù)據(jù),此時返回nums.length
代碼
java實(shí)現(xiàn)
class Solution {
public int searchInsert(int[] nums, int target) {
for(int i=0;i<nums.length;i++) {
//第一種情況
if (nums[i]>=target) {
return i;
}
}
//第二種情況
return nums.length;
}
}