剑指 Offer 53 - I. 在排序数组中查找数字 I

力扣

统计一个数字在排序数组中出现的次数。

示例 1:

输入: nums = 5,7,7,8,8,10, target = 8

输出: 2

示例 2:

输入: nums = 5,7,7,8,8,10, target = 6

输出: 0

提示:

0 <= nums.length <= 105

-109 <= numsi <= 109

nums 是一个非递减数组

-109 <= target <= 109

解题思路

双指针

1.双指针i,j分别指向开始和结尾,从两边往中间遍历.

2.当ij对应的值相等并且等于target时,返回差值+1就为个数.

代码:

cpp 复制代码
class Solution {
public:
    int search(vector<int>& nums, int target) {
        int i=0,j = nums.size()-1;
        while(i<=j){
            if(nums[i]==nums[j]&&nums[i]==target){
               return j-i+1; 
            }
            if(nums[i]<target){
                i++;
            }
            if(nums[j]>target){
                j--;
            }
        }
        return 0;
    }
};
相关推荐
颜x小5 分钟前
[C#]泛型类与泛型方法
开发语言·c++·c#
Lhan.zzZ19 分钟前
深入理解 windeployqt:混合 C++/Qt 项目的打包指南
开发语言·c++·qt
zander25827 分钟前
LeetCode 46. 全排列
算法·leetcode·深度优先
zh路西法1 小时前
【Navigation2进阶】(十二):自主探索性能优化与 RIG 算法推导与 Nav2 插件实现
c++·dijkstra·ros2·rrt·navigation2·前沿探索
星恒随风1 小时前
C++ STL 详解:set 与 multiset 的使用、区间查询和算法应用
开发语言·c++·笔记·学习·算法
Lumos1861 小时前
《ESP32 物联网全栈实战-02》ESP-IDF 工程结构
算法
再卷也是菜1 小时前
C++11支持并发库
开发语言·c++
QN1幻化引擎2 小时前
把 意识评测做成了一场"非侵入实验":不碰生产代码,分数反而更真了
人工智能·算法·架构
六月的翅膀2 小时前
OCR:RapidOCR C++/C#
c++·ocr
颜x小2 小时前
[C#]——接口与继承
开发语言·c++·c#