Search Insert Position
来源:互联网 发布:脉脉软件安全吗 编辑:程序博客网 时间:2024/05/03 16:59
https://oj.leetcode.com/problems/search-insert-position/
1、题目要求:给定一个已排序数组A[],和目标值target,如果在数组A[]中找到了目标值target,则返回其下标索引值,如果没有找到目标值target,则返回如果将target插入到数组A[]中 的索引值。
例:
[1,3,5,6]
, 5 → 2[1,3,5,6]
, 2 → 1[1,3,5,6]
, 7 → 4[1,3,5,6]
, 0 → 0
2、解题思路:二分查找来确定target的位置,如果没有找到,则此时right<left (left - right= 1),right+1(或者left)就是target在A[]中的位置,因为如果target在数组A[]中,则当left=right时查找成功。
class Solution {public: int searchInsert(int A[], int n, int target) { if(n<=0) return 0; int left= 0, right= n-1, mid; //二分查找,注意循环的条件是<= while(left<=right) { mid= (left+right)/2; if(target>A[mid]) left= mid+1; else if(target<A[mid]) right= mid-1; else return mid; } //当查找失败的时候,right<left, //return ++right; return left; }};
0 0
- LeetCode: Search Insert Position
- Search Insert Position
- LeetCode Search Insert Position
- [Leetcode] Search Insert Position
- LeetCode : Search Insert Position
- Search Insert Position
- [LeetCode] Search Insert Position
- [Leetcode] Search Insert Position
- LeetCode34:Search Insert Position
- Search Insert Position
- [35]Search Insert Position
- Search Insert Position
- Search Insert Position
- [LeetCode]Search Insert Position
- Search Insert Position
- [LeetCode] Search Insert Position
- Search Insert Position
- Search Insert Position
- 机器学习资源总结
- hadoop-2.6.0集群环境搭建
- ios8中UITabbarController的图片颜色处理
- ubuntu下的jdk安装
- 包含双重指针的结构体指针的分配内存与释放内存
- Search Insert Position
- android AsyncTask介绍
- 对只含1、2、3的数组排序
- div+css初步探索(2)
- 九度OJ 1183 守形数 (模拟)
- js代码整理
- Android下打印调试堆栈方法
- oracle 用户和权限
- ios碎片知识汇总