import java.util.*;

public class MagicIndex {
     public boolean findMagicIndex(int[] A, int n) {


        // write code here
        return handData(A, 0, n - 1);
    }


    public boolean handData(int[] A, int left, int right) {

        if (left >= right) {
            return false;
        }

        int i = left + (right - left) / 2;

       if (i == A[i]) {
           return true;
       } else{
            return handData(A, left , i) || handData(A, i+1 , right);
        }

    }
}

思路 :二分法 解决,但是要注意 两边都可能存在 数