给定如下的n*n的数字矩阵,每行从左到右是严格递增, 每列的数据也是严格递增
1 2 3
3 5 6
4 8 9
现在要求设计一个算法, 给定一个数k 判断出k是否在这个矩阵中。 描述算法并且给出时间复杂度(不考虑载入矩阵的消耗)
int searchK(int int_arr[][],int n,int startlow,int startclm,int k) { int lefttemp=0; int downtemp=0; int i=0; while(int_arr[startlow+i][startclm+i] i++; if (i==n) return 0; else if(arr[i][i]==k) reuturn 1; else return searchK(int_arr,n,startlow,startclm+i,k)+searchK(int_arr,n,startlow+i,startclm,k); }