#include <iostream>
#include <string>
#include <vector>
using namespace std;
class Solution
{
public:
vector<int> nums;
public:
int searchInsert(vector<int> &nums, int target)
{
int n = nums.size();
int left = 0, right = n - 1, ans = n;
while (left <= right)
{
int mid = ((right - left) >> 1) + left;
if (target <= nums[mid])
{
ans = mid;
right = mid - 1;
}
else
{
left = mid + 1;
}
}
return ans;
}
};
void test01()
{
Solution s;
int res;
s.nums.push_back(1);
s.nums.push_back(3);
s.nums.push_back(5);
s.nums.push_back(6);
res = s.searchInsert(s.nums, 0);
cout << res << endl;
}
int main()
{
test01();
system("pause");
return 0;
}
// https://leetcode-cn.com/problems/search-insert-position/
LeetCode:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
最新推荐文章于 2023-07-17 18:47:56 发布
本文介绍了如何使用C++实现LeetCode题目《搜索插入位置》。通过Solution类的searchInsert方法,演示了二分查找在有序整数数组中插入目标值的位置。实例代码包括测试函数test01和main函数,展示了实际应用过程。
摘要由CSDN通过智能技术生成