2020-01-03-SearchInsertPosition
LeetCode38
Easy
Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.
You may assume no duplicates in the array.
Example 1:
1 | Input: [1,3,5,6], 5 |
Example 2:
1 | Input: [1,3,5,6], 2 |
Example 3:
1 | Input: [1,3,5,6], 7 |
Example 4:
1 | Input: [1,3,5,6], 0 |
离职后的第一题想先简单点热个身(后面有个难的目前还没做出来),就是说给一个target,返回它在数组中的位置
How
该题目一上脑子就可以写下如下的代码
1 | public int searchInsert(int[] nums, int target) { |
但转念一想,题目中给定的是一个sorted array这是一个优化的切口,可以将O(n)的复杂度降低到O(logn),通过递归来拆解完成这道题
1 | private int searchInsert(int[] nums, int target, int low, int high) { |