给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

你可以假设数组中无重复元素。

示例 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

Java版

class Solution {
public int searchInsert(int[] nums, int target) {
int[] res = new int[nums.length+1];
int i=0;
for(i=0;i<nums.length;i++) {
res[i]=nums[i];
}
res[res.length-1]=target;
Arrays.sort(res);
for(i=0;i<res.length;i++) {
if(res[i]==target) {
break;
}
}
return i;
}
}

精简版

class Solution {
public int searchInsert(int[] nums, int target) {
for(int i=0;i<nums.length;i++) {
if(target<=nums[i]) {
return i;
}
}
return nums.length;
}
}

运行结果

力扣(LeetCode) 35. 搜索插入位置-LMLPHP

05-11 15:24
查看更多