LeetCode 35.搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
你可以假设数组中无重复元素。
示例 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
思想:比较简单的一道题,但是要注意极端情况的考虑
public static int searchInsert(int[] nums, int target) { if (nums.length == 0 || target < nums[0]){ return 0; } List<Integer> list = new ArrayList<>(); for (int i=0; i<nums.length ; i++) { if (target == nums[i]){ return i; } if (target > nums[i]){ if (i == nums.length - 1){ return nums.length; } if (target < nums[i+1]){ return i+1; } } list.add(nums[i]); } return -1; }