題目:
編寫乙個高效的演算法來搜尋 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。
思路:
先在陣列中找乙個左下角的數字作為參照數字,然後將參照數字與目標數字進行比較,
1、如果參照數字和目標數字相等返回true
2、如果參照數字小於目標數字,將參照數字的列加1
3、如果參照數字大於目標數字,將參照數字的行減1
**實現
class solution
int row=matrix.length;
int col=matrix[0].length;
int x=matrix.length-1;
int y=0;
while(x>=0&&y}
return false; //如果跳出while迴圈則說明沒有找到
}}
leetcode240 搜尋二維矩陣
編寫乙個高效的演算法來搜尋 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...
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...
LeetCode 240 搜尋二維矩陣 II
1.題目 2.解答 2.1.方法一 從矩陣的左下角開始比較 class solution return false 2.2.方法二 我們先沿著對角線的方向,找到第乙個大於目標值的數字。比如目標值 14,我們發現 9 14 17。然後左上角和右下角的元素都可以排除掉了。我們只需再對左下角剩餘的行和右上...