【LintCode】Search Insert Position 搜索插入位置
2015-07-15 22:07
375 查看
给定一个排序数组和一个目标值,如果在数组中找到目标值则返回索引。如果没有,返回到它将会被按顺序插入的位置。
你可以假设在数组中无重复元素。
样例
[1,3,5,6],5 → 2
[1,3,5,6],2 → 1
[1,3,5,6], 7 → 4
[1,3,5,6],0 → 0
你可以假设在数组中无重复元素。
样例
[1,3,5,6],5 → 2
[1,3,5,6],2 → 1
[1,3,5,6], 7 → 4
[1,3,5,6],0 → 0
public class Solution { /** * param A : an integer sorted array * param target : an integer to be inserted * return : an integer */ public int searchInsert(int[] A, int target) { if(null == A) return -1; if(A.length == 0) return 0; int l = 0; int r = A.length - 1; while(l <= r) { int m = l + (r - l)/2; if(A[m] == target) { return m; } else if(A[m] < target) { l = m + 1; } else { r = m - 1; } } return l; } }
相关文章推荐
- 为什么静态类不能访问非静态类
- Linux学习笔记1-20150715
- FFmpeg参数
- LeetCode(11) Container With Most Water
- c语言中scanf 与 fgets的区别 以及怎么同时用两个函数
- 自己动手写MutableArray
- listview中的item增加事件
- Fedora(Linux)中配置mondodb数据库
- ZigZag Conversion
- ffmpeg的tutorial中文版学习笔记(四)
- Java基础Map的使用
- 局部探索式测试法
- 如何能使xcode拥有自动注释并生成文档的功能
- 各种Adapter的用法
- Angular.js VS. Ember.js:谁将成为Web开发的新宠?
- css text-overflow
- Tomcat调优总结
- Http的GET和POST请求
- SQLite的使用详解
- 七七四十九劫,九九八十一难