题解 | #二维数组中的查找#
二维数组中的查找
https://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param target int整型 * @param array int整型二维数组 * @return bool布尔型 */ public boolean Find (int target, int[][] array) { // write code here if (array.length == 1 && array[0].length == 0) { return false; } // for(int i=0;i<array.length;){ // for(int j=array[0].length-1;j>=0;){ // if(array[i][j]==target){ // return true; // }else if(array[i][j]<target){ // i++; // }else{ // j--; // } // } // } for (int i = 0, j = array[0].length - 1; i < array.length && j >= 0;) { if (array[i][j] == target) { return true; } else if (array[i][j] < target) { i++; } else { j--; } } return false; } }
本质上是寻找秩序的过程,也就是寻找哪种数的一个方位全是这种性质,而另一个方位却统一的是另一种性质。