当前位置:网站首页>力扣每日一题-第46天-704. 二分查找
力扣每日一题-第46天-704. 二分查找
2022-07-31 01:26:00 【重邮研究森】
2022.7.30今天你刷题了吗?
题目:
给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。
分析:
给定一个升序数组和整型,在这个数组中找到是否存在这个整型,存在则返回下标,不存在则返回-1。
思路:对于查找问题:第一思路就是二分查找。利用两个下标一左一右,分别从两端开始。判断中间的值是否和目标一样,根据大小关系调整下标。
当target>num,则说明目标值在num右边,则left变
当target<num,则说明目标值在num左边,则right变
解析:
1.二分法
class Solution {
public:
int search(vector<int>& nums, int target) {
int left = 0, right = nums.size() - 1;
while (left <= right)
{
int mid = (right - left) / 2 + left;
int num = nums[mid];
if (target > num)
{
left = mid + 1;
}
else if (target < num)
{
right = mid - 1;
}
else
{
return mid;
}
}
return -1;
}
};2.暴力法
直接对数组进行遍历,当遍历的元素小于target一直遍历,当出现相等则返回下标,当出现大于情况则返-1
class Solution {
public:
int search(vector<int>& nums, int target) {
int i=0;
while(i<nums.size()-1&&nums[i]<target)
{
i++;
}
if(nums[i]!=target)
{
i=-1;
}
return i;
}
};边栏推荐
猜你喜欢

Word 表格跨页,仍然显示标题

I have been working in software testing for 3 years, how did I go from just getting started to automated testing?

《实战》基于情感词典的文本情感分析与LDA主题分析

【952. 按公因数计算最大组件大小】

The difference between 4G communication module CAT1 and CAT4

221. 最大正方形

手把手教你配置Jenkins自动化邮件通知

JPEG Steganalysis of Digital Image Steganography

This project is so geeky

《实战》基于电商领域的词性提取及其决策树模型建模
随机推荐
Solution: Parameter 0 of method ribbonServerList in com.alibaba.cloud.nacos.ribbon.NacosRibbonClientConfigu
射频器件的基本参数2
验证 XML 文档
《实战》基于电商领域的词性提取及其决策树模型建模
typescript14-(单独指定参数和返回值的类型)
无线模块的参数介绍和选型要点
数字图像隐写术之JPEG 隐写分析
孩子的编程启蒙好伙伴,自己动手打造小世界,长毛象教育AI百变编程积木套件上手
Know what DTU is 4GDTU equipment
分布式.分布式锁
typescript13 - type aliases
I have been working in software testing for 3 years, how did I go from just getting started to automated testing?
typescript12 - union types
图像处理工具设计
蓝牙mesh系统开发三 Ble Mesh 配网器 Provisioner
87. Convert String to Integer
ECCV 2022 华科&ETH提出首个用于伪装实例分割的一阶段Transformer的框架OSFormer!代码已开源!
【genius_platform软件平台开发】第七十四讲:window环境下的静态库和动态库的一些使用方法(VC环境)
Word 表格跨页,仍然显示标题
System design. Short chain system design