11.6---矩阵查找元素(CC150)

思路,一旦提到查找就要想到二分查找。

    public static int[] findElement(int[][] a, int n, int m, int key) {
        // write code here
        int[] res = new int[2];
        for(int i = 0;i < n;i++){
            int left = 0;
            int right = m - 1;
            while(left <= right){
                int mid = (left + right) / 2;
                if(key < a[i][mid]){
                    right = mid -1;
                }
                else if (key > a[i][mid]){
                    left = mid + 1;
                }
                else{
                    res[0] = i;
                    res[1] = mid;
                    break;
                }
            }
        }

        return res;
    }
View Code
原文地址:https://www.cnblogs.com/yueyebigdata/p/5100666.html