35. Search Insert Position
来源:互联网 发布:摩尔软件安装 编辑:程序博客网 时间:2024/06/06 00:06
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.
Here are few examples.[1,3,5,6]
, 5 → 2[1,3,5,6]
, 2 → 1[1,3,5,6]
, 7 → 4[1,3,5,6]
, 0 → 0
Solution:
Tips:
Note the edge cases, leverage binary search. compare the middle element and its adjacent elements with target value.
Java Code:
public class Solution { public int searchInsert(int[] nums, int target) { // assume nums is not null return searchInsert(nums, 0, nums.length - 1, target); } public int searchInsert(int[] nums, int b, int e, int target) { int middle = b + (e - b) / 2; if (nums[middle] == target) { return middle; } if (target < nums[middle]) { if (0 == middle) { return 0; } if (target > nums[middle - 1] ) { return middle; } return searchInsert(nums, b, middle - 1, target); } else { if (nums.length - 1 == middle) { return middle + 1; } if (target < nums[middle + 1]) { return middle + 1; } return searchInsert(nums, middle + 1, e, target); } }}
0 0
- 35.Search Insert Position
- 35. Search Insert Position
- 35.Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 35. Search Insert Position
- 防XSS的两个函数
- FileOperation
- 104. Maximum Depth of Binary Tree
- MySQL数据库的数据库引擎有哪些
- Search Graph Nodes
- 35. Search Insert Position
- redis 第一个hello world
- 写一个函数可以判断一个数是不是素数
- Mybatis关联查询一对一和一对多的实现
- 389. Find the Difference
- 16. 函数指针
- Android基础知识06
- Linux的进程------进程的描述和进程的创建
- KinectV2 在ubuntu14.04 环境下安装