如何在排序数组中,找出给定数字出现的次数

来源:互联网 发布:数控车床编程自学视频 编辑:程序博客网 时间:2024/06/05 17:22

题目
eg
数组[1,2,2,2,3]中2的出现次数是3次;

#include <stdio.h>int BinarySearch(int *a,int length,int num,bool isLeft){    int left = 0,right = length -1;    int last = 0;    while(left< = right){        int mid = (left+ right)/2;        if(a[mid]<num)        {            left = mid +1;        }        else if(a[mid]>num)        {            right = mid -1;        }        else        {            last = mid;            if(isLeft)            {                right = mid -1;            }            else            {                left = mid +1;            }        }    }    return last>0?last:-1;}
阅读全文
0 0
原创粉丝点击