力扣hot100 搜索二维矩阵 II 二分 抽象BST

Problem: 240. 搜索二维矩阵 II
在这里插入图片描述

💖 二分

👨‍🏫 参考思路
⏰ 时间复杂度: O ( n log ⁡ n ) O(n\log{n}) O(nlogn)
🌎 空间复杂度: O ( 1 ) O(1) O(1)

class Solution {
	public boolean searchMatrix(int[][] matrix, int target)
	{
		int n = matrix.length;
		int m = matrix[0].length;
		if (n == 0 || m == 0)
			return false;
		for (int i = 0; i < n; i++)
		{
			if (matrix[i][0] > target)
				break;
			if (matrix[i][m - 1] < target)
				continue;
			int col = bsearch(matrix[i], target);
			if (matrix[i][col] == target)
				return true;
		}
		return false;
	}

//	在 a 中二分查找 x,没找到返回 -1
	private int bsearch(int[] a, int x)
	{
		int l = 0;
		int r = a.length - 1;
		while (l < r)
		{
			int m = l + r >> 1;
			if (a[m] >= x)
				r = m;
			else
				l = m + 1;
		}
		return l;
	}
}

💖 抽象BST

👩‍🏫 参考题解

在这里插入图片描述

class Solution {
   
    public boolean searchMatrix(int[][] matrix, int target) {
   
        int m = matrix.length, n = matrix[0].length;
		int r = 0,c = n-1;
		while (r < m && c >= 0)
		{
   
			if(matrix[r][c] < target) //目标值较大,走右子树
				r++;
			else if(matrix[r][c] > target)//目标值较小,走左子树
				c--;
			else
				return true;
		}
        return false;
    }
}

相关推荐

  1. 搜索矩阵 II矩阵】【二分

    2024-01-29 08:34:04       38 阅读
  2. 【算法详解】240.搜索矩阵II

    2024-01-29 08:34:04       24 阅读
  3. 100】240.搜索矩阵2

    2024-01-29 08:34:04       44 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-29 08:34:04       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-29 08:34:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-29 08:34:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-29 08:34:04       18 阅读

热门阅读

  1. VUE computed和watch例子

    2024-01-29 08:34:04       30 阅读
  2. [EFI]戴尔T5810电脑 Hackintosh 黑苹果efi引导文件

    2024-01-29 08:34:04       35 阅读
  3. 非root运行docker容器

    2024-01-29 08:34:04       40 阅读
  4. go标准库Context上下文

    2024-01-29 08:34:04       30 阅读
  5. web架构师编辑器内容-添加自动保存的功能

    2024-01-29 08:34:04       37 阅读
  6. 获取本机请求时真实ip

    2024-01-29 08:34:04       27 阅读
  7. Qt 分段Bezier曲线插值(2D)

    2024-01-29 08:34:04       45 阅读
  8. OpenCV 3 - Mat对象介绍

    2024-01-29 08:34:04       31 阅读