标签:span return == target win this style matrix else
Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties:
For example,
Consider the following matrix:
[ [1, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34, 50] ]
Given target = 3
, return true
.
1 public class Solution { 2 public bool SearchMatrix(int[,] matrix, int target) { 3 int m = matrix.GetLength(0), n = matrix.GetLength(1); 4 int low = 0, high = m * n; 5 6 while (low < high) 7 { 8 int mid = low + (high - low) / 2; 9 int r = mid / n, c = mid % n; 10 11 if (matrix[r, c] == target) 12 { 13 return true; 14 } 15 else if (matrix[r, c] > target) 16 { 17 high = mid; 18 } 19 else 20 { 21 low = mid + 1; 22 } 23 } 24 25 return false; 26 } 27 }
Leetcode 74: Search a 2D Matrix
标签:span return == target win this style matrix else
原文地址:http://www.cnblogs.com/liangmou/p/7818042.html