Leeeeyo_ 2014-09-05 22:53 采纳率: 100%
浏览 647

请大神帮我纠错!Java数组的问题

给一个int 数组A[],和一个X,已知A中各元素是升序排列,要求返回X在A中的位置。A可能狂大,注意性能。
class Solution {

int solution(int[] A, int X) {if (A == null) return -1;

    int N = A.length;

    if (N == 0) {

        return -1;

    }

    int l = 0;

    int r = N - 1;

    while (l < r) {

        int m = (l + r) / 2;

        if (A[m] > X) {

            r = m - 1;

        } else if(l < m){

            l = m;

        } else break;

    }

    if (A[l] == X) {

        return l;

    }

    return -1;

}

}

这是我的代码,能帮我看看哪里出错了么?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 对于相关问题的求解与代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
    • ¥15 保护模式-系统加载-段寄存器
    • ¥15 电脑桌面设定一个区域禁止鼠标操作
    • ¥15 求NPF226060磁芯的详细资料