35. 搜索插入位置
https://leetcode-cn.com/problems/search-insert-position/description/
package com.test; public class Lesson035 { public static void main(String[] args) { int[] nums = {1,3,5,6}; int target = 5; int in = searchInsert(nums, target); System.out.println(in); } public static int searchInsert(int[] nums, int target) { for(int i=0;i<nums.length;i++) { // 如果相等就找到了 if (target - nums[i]==0) { return i; } // 如果比第i个元素小 if (target < nums[i]) { // 如果比第一个元素小 if (i == 0) { return 0; } // 如果比第i个元素小,并且比第i-1个元素大 if (i > 0 && target > nums[i - 1]) { return i; } } // 如果比第i个元素大 if (target > nums[i]) { // 如果比最后一个元素大 if (i - nums.length == -1) { return nums.length; } // 如果比第i个元素大,并且比第i+1个元素小 if (i + 1 < nums.length && target < nums[i + 1]) { return i+1; } } } return 0; } }
二分查找: