【C语言刷力扣】704.二分查找

题目:

解题思路:

在循环中用 nums[mid]target比较,

  • nums[mid] < target , 则范围向大于 mid一侧收缩

  • nums[mid] > target , 则范围向小于 mid一侧收缩

    int search(int* nums, int numsSize, int target) {
    int l = 0, r = numsSize -1;
    while (l <= r) {
    int mid = (r + l) / 2;
    if (target > nums[mid]) {
    l = mid + 1;
    }
    else if (target < nums[mid]) {
    r = mid - 1;
    }
    else return mid;
    }
    return -1;
    }

相关推荐
KangkangLoveNLP10 分钟前
手动实现一个迷你Llama:使用SentencePiece实现自己的tokenizer
人工智能·深度学习·学习·算法·transformer·llama
luckyme_12 分钟前
leetcode-代码随想录-哈希表-哈希理论基础
leetcode·哈希算法·散列表
独好紫罗兰14 分钟前
洛谷题单3-P1420 最长连号-python-流程图重构
开发语言·python·算法
柯ran38 分钟前
数据结构|排序算法(一)快速排序
数据结构·算法·排序算法
pipip.43 分钟前
搜索二维矩阵
数据结构·算法·矩阵
uhakadotcom1 小时前
图像识别中的三大神经网络:Inception、ResNet和VGG
算法·面试·github
努力学计算机的小白一枚1 小时前
146. LRU 缓存 && 带TTL的LRU缓存实现(拓展)
算法·缓存
uhakadotcom1 小时前
DeepFM算法:提升CTR预估和推荐系统的强大工具
算法·面试·github
evolution_language1 小时前
LintCode第974题-求矩阵各节点的最短路径(以0为标准)
算法·最短路径·广度优先搜索
序属秋秋秋2 小时前
算法基础_基础算法【位运算 + 离散化 + 区间合并】
c语言·c++·学习·算法·蓝桥杯