【LeetCode】35. Search Insert Position
2017-01-08 09:58
495 查看
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.
Difficulty: Medium
算法是二分查找,注意边界的判断,终止条件的判断,每次上界和下界的更新
时间复杂度O(logn)
class Solution {
public:
int searchInsert(vector<int>& nums, int target) {
int low=0,high=nums.size();
if(high==0) return 0;
high=high-1;
while(low<=high)
{
int mid=(low+high)/2;
if(nums[mid]==target) return mid;
else if(nums[mid]<target) low=mid+1;
else high=mid-1;
}
return low;
}
};
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
Difficulty: Medium
算法是二分查找,注意边界的判断,终止条件的判断,每次上界和下界的更新
时间复杂度O(logn)
class Solution {
public:
int searchInsert(vector<int>& nums, int target) {
int low=0,high=nums.size();
if(high==0) return 0;
high=high-1;
while(low<=high)
{
int mid=(low+high)/2;
if(nums[mid]==target) return mid;
else if(nums[mid]<target) low=mid+1;
else high=mid-1;
}
return low;
}
};
相关文章推荐
- LeetCode 35. Search Insert Position
- 个人记录-LeetCode 35. Search Insert Position
- LeetCode 35. Search Insert Position
- leetcode 35. Search Insert Position搜索插入位置(二分查找)
- [leetcode]35. Search Insert Position(java)
- 【leetcode】35. Search Insert Position
- [leetcode:python]35.Search Insert Position
- [leetcode]Binary Search-35. Search Insert Position
- leetcode 35. Search Insert Position
- Leetcode35. Search Insert Position
- Leetcode 35. Search Insert Position (Medium) (cpp)
- LeetCode-35. Search Insert Position
- LeetCode 35. Search Insert Position
- [LeetCode-Java]35. Search Insert Position
- leetcode-35. Search Insert Position
- [LeetCode By python]35. Search Insert Position
- [LeetCode]35. Search Insert Position
- Leetcode 35. Search Insert Position
- [leetcode]35. Search Insert Position
- LeetCode35. Search Insert Position