2020-09-03 16:01
华中科技大学 C++ so_what_xx...:将操作抽象出来,岂不是更能很好的套用二分 private int[][] matrix=null; private int end; public boolean searchMatrix (int[][] matrix, int target) { // write code here if(matrix==null) return false; if(matrix.length==0) return false; this.matrix=matrix; this.end=matrix.length*matrix[0].length; if(this.end==1) { if(matrix[0][0]==target) { return true; }else { return false; } } return halfsearch(target,1,end); } public int lengthTox(int length) { return (length-1)/this.matrix[0].length; } public int lengthToy(int length) { return length-lengthTox(length)*this.matrix[0].length-1; } public int xyTolength(int x,int y) { return x*this.matrix[0].length+y+1; } public boolean halfsearch(int target,int left,int right) { //边界条件 if(target>this.matrix[lengthTox(right)][lengthToy(right)]||target<this.matrix>this.matrix[lengthTox(mid)][lengthToy(mid)]){ left=mid; } if(target</this.matrix>
0 点赞 评论 收藏
分享
创作者周榜
更多
关注他的用户也关注了: