搜索插入位置
1、给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
2、假设数组中无重复元素。
方法1:暴力求解
1、从数组的左边遍历到右边,如果遇到相等的元素,直接返回下标;
2、遇到第 1 个严格大于 target 的元素,返回这个元素的下标;
3、如果数组里所有的元素都严格小于 target,返回数组的长度 len。
时间复杂度O(N),空间复杂度O(1)。
/**
* 暴力求解:循环一遍数组如果遇到相同target的就返回下标,否则返回严格大于target的第一个元素
* 时间复杂度:O(n)
* @param nums
* @param target
* @return
*/
public int searchInsert(int[] nums, int target) {
for(int i = 0;i < nums.length;i++){
if(nums[i] == target){
return i;
}else if(nums[i]>target){