顺序递增数组中,找到key首次出现的位置

Posted 不受人言驱使,不失己言风范。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了顺序递增数组中,找到key首次出现的位置相关的知识,希望对你有一定的参考价值。

int find(int * arr , int length, int key){
    int low = 0,high = length-1,mid;
    while(low <= high){
        mid = (low + high)/2;
        if (arr[mid] < key){
            low = mid + 1;
        }else if(arr[mid] > key){
            high = mid - 1;
        }else{
            if (mid == 0) return mid;
            if (mid >= 1 && arr[mid-1] != key) return mid;
            else high = mid - 1;
        }
    }
    return -1;
}

 

以上是关于顺序递增数组中,找到key首次出现的位置的主要内容,如果未能解决你的问题,请参考以下文章

在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否函数该整数。 ```java publi(代码

(查找)找到数组中的指定值得起始和结束位置

剑指offer之二维数组中的查找

indexOf()返回首次出现位置,splice() 方法向/从数组中添加/删除项目

php strpos() 查找字符串首次出现的位置

strpos — 查找字符串首次出现的位置