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;
}
相关推荐
学习路上_write31 分钟前
STM32回调函数使用/定时器/GPIO/串口/
c语言·单片机·嵌入式硬件
czy87874752 小时前
C语言实现状态模式
c语言·状态模式
czy87874752 小时前
C语言实现迭代器模式
c语言·迭代器模式
GilgameshJSS2 小时前
STM32H743-ARM例程36-DNS
c语言·arm开发·stm32·单片机·嵌入式硬件
Shinom1ya_3 小时前
算法 day 41
数据结构·算法·leetcode
czy87874754 小时前
C语言实现策略模式
c语言·排序算法·策略模式
一匹电信狗4 小时前
【C++】红黑树详解(2w字详解)
服务器·c++·算法·leetcode·小程序·stl·visual studio
不觉晚秋4 小时前
极限挑战之一命速通哈夫曼树
c语言·数据结构··哈夫曼树
散峰而望4 小时前
Dev-C++一些问题的处理
c语言·开发语言·数据库·c++·编辑器
时间不说谎5 小时前
C语言 strtok线程不安全
c语言