c_cpp 找到给定数组中的固定点(值等于索引)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 找到给定数组中的固定点(值等于索引)相关的知识,希望对你有一定的参考价值。

//https://www.geeksforgeeks.org/find-a-fixed-point-in-a-given-array/
#include<iostream>
using namespace std;

int binary(int a[],int l,int r){
    if (l<=r){
        int m=(l+r)/2;
        if (a[m]==m)
            return m;
        else if (a[m] > m)
            return binary(a,0,m-1);
        return binary(a,m+1,r);
    }
    return -1;
}

int main(){
    int n;
    cin>>n;
    int a[n];
    for(int i=0;i<n;i++)
        cin>>a[i];

    int j=binary(a,0,n-1);
    cout<<j;
}

以上是关于c_cpp 找到给定数组中的固定点(值等于索引)的主要内容,如果未能解决你的问题,请参考以下文章

数组中的两个不同数字,它们的和等于给定值

c_cpp 根据给定的索引重新排序数组

c_cpp 给定二叉树和求和,找到所有根到叶路径,其中每个路径的总和等于给定的总和

找到预排序数组中给定值的最低索引

C语言中啥是索引??

和等于 0 的最大子数组