leetcode704. 二分查找

leetcode704. 二分查找:https://leetcode.cn/problems/binary-search/description/

给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1

示例 1:

复制代码
输入: nums = [-1,0,3,5,9,12], target = 9
输出: 4
解释: 9 出现在 nums 中并且下标为 4

示例 2:

复制代码
输入: nums = [-1,0,3,5,9,12], target = 2
输出: -1
解释: 2 不存在 nums 中因此返回 -1

提示:

  1. 你可以假设 nums 中的所有元素是不重复的。
  2. n 将在 [1, 10000]之间。
  3. nums 的每个元素都将在 [-9999, 9999]之间。
c 复制代码
int search(int* nums, int numsSize, int target) {
    int left = 0, right = numsSize - 1;
    while (left <= right) {
        int mid = (left + right) / 2;
        if (nums[mid] > target) {
            right = mid - 1;
        } else if (nums[mid] < target) {
            left = mid + 1;
        } else {
            return mid;
        }
    }
    return -1;
}
相关推荐
EXtreme3516 分钟前
深入浅出数据结构:手把手实现动态顺序表,从此不再怕数组扩容!
c语言·顺序表·malloc·realloc
smj2302_796826528 小时前
解决leetcode第3753题范围内总波动值II
python·算法·leetcode
薛慕昭11 小时前
嵌入式 C 语言猜大小游戏设计与实现
c语言·游戏
leoufung11 小时前
LeetCode 92 反转链表 II 全流程详解
算法·leetcode·链表
月光技术杂谈12 小时前
实战:C驱动框架嵌入Rust模块的互操作机制与完整流程
c语言·开发语言·rust·ffi·跨语言·bindgen·互操作
im_AMBER12 小时前
Leetcode 59 二分搜索
数据结构·笔记·学习·算法·leetcode
合作小小程序员小小店13 小时前
游戏开发,桌面%小游戏,贪吃蛇%demo,基于vs2022,c语言,easyX,无数据库
c语言·开发语言
leoufung13 小时前
LeetCode 61. 旋转链表(Rotate List)题解与思路详解
leetcode·链表·list
WongKyunban17 小时前
Linux中的线程是什么?
c语言
LaoZhangGong12318 小时前
以太网HTTP数据包格式分析
c语言·stm32·网络协议·http·tcp·arp