240. 搜尋二維矩陣 ii
編寫乙個高效的演算法來搜尋 m x n 矩陣 matrix 中的乙個目標值 target。該矩陣具有以下特性:
每行的元素從左到右公升序排列。
每列的元素從上到下公升序排列。
示例:現有矩陣 matrix 如下:
[[1, 4, 7, 11, 15],
[2, 5, 8, 12, 19],
[3, 6, 9, 16, 22],
[10, 13, 14, 17, 24],
[18, 21, 23, 26, 30]
]給定 target = 5,返回 true。
給定 target = 20,返回 false。
int binarysearch(vector> &matrix,int row,int target)
else if(matrix[row][mid]>& matrix, int target)
int mid=left+(right-left)/2;
int row=up;
while(row<=down&&matrix[row][mid]<=target)
row++;
}return searchrec(matrix,target,row,left,down,mid-1)||searchrec(matrix,target,up,mid+1,row-1,right); //右上,左下矩陣
}bool searchmatrix(vector>& matrix, int target)
return searchrec(matrix,target,0,0,matrix.size()-1,matrix[0].size()-1);
}
基本思路:可以從左下或者右上的位置開始,一左下為例,相當於乙個二叉搜尋樹
bool searchmatrix(vector>& matrix, int target)
else
return true;
}return false;
}
240 搜尋二維矩陣 II
題目描述 編寫乙個高效的演算法來搜尋 m x n 矩陣 matrix 中的乙個目標值 target。該矩陣具有以下特性 每行的元素從左到右公升序排列。每列的元素從上到下公升序排列。示例 現有矩陣 matrix 如下 1,4,7,11,15 2,5,8,12,19 3,6,9,16,22 10,13,...
240 搜尋二維矩陣 II
編寫乙個高效的演算法來搜尋 m x n 矩陣 matrix 中的乙個目標值 target。該矩陣具有以下特性 每行的元素從左到右公升序排列。每列的元素從上到下公升序排列。示例 現有矩陣 matrix 如下 1,4,7,11,15 2,5,8,12,19 3,6,9,16,22 10,13,14,17...
LeetCode 240 搜尋二維矩陣 II
編寫乙個高效的演算法來搜尋 m x n 矩陣 matrix 中的乙個目標值 target。該矩陣具有以下特性 示例 現有矩陣 matrix 如下 1,4,7,11,15 2,5,8,12,19 3,6,9,16,22 10,13,14,17,24 18,21,23,26,30 給定 target 5...