当前位置: 首页 > news >正文

昆明网站代理昆明专业的网站制作建设

昆明网站代理,昆明专业的网站制作建设,网站制作软件名字线做,惠阳开发网站建设目录 题目描述解法方法一:二分查找方法二:从左下角或右上角搜索 运行结果方法一方法二 题目描述 给你一个满足下述两条属性的 m x n 整数矩阵: 每行中的整数从左到右按非严格递增顺序排列。每行的第一个整数大于前一行的最后一个整数。 给…

目录

  • 题目描述
  • 解法
    • 方法一:二分查找
    • 方法二:从左下角或右上角搜索
  • 运行结果
    • 方法一
    • 方法二


题目描述

给你一个满足下述两条属性的 m x n 整数矩阵:

  • 每行中的整数从左到右按非严格递增顺序排列。
  • 每行的第一个整数大于前一行的最后一个整数。

给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。

示例 1:
在这里插入图片描述

输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3
输出:true

示例 2:
在这里插入图片描述

输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13
输出:false

提示:

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 100
  • -104 <= matrix[i][j], target <= 104

解法

方法一:二分查找

我们将二维矩阵逻辑展开,然后二分查找即可。

时间复杂度 O(log(m×n))。其中 m 和 n 分别是矩阵的行数和列数。空间复杂度 O(1)。

class Solution(object):def searchMatrix(self, matrix, target):""":type matrix: List[List[int]]:type target: int:rtype: bool"""m, n = len(matrix), len(matrix[0])left, right = 0, m * n - 1while left < right:mid = (left + right) >> 1x, y = divmod(mid, n)if matrix[x][y] >= target:right = midelse:left = mid + 1return matrix[left // n][left % n] == target

方法二:从左下角或右上角搜索

这里我们以左下角作为起始搜索点,往右上方向开始搜索,比较当前元素 matrix[i][j] 与 target 的大小关系:

  • 若 matrix[i][j]=target,说明找到了目标值,直接返回 true。
  • 若 matrix[i][j]>target,说明这一行从当前位置开始往右的所有元素均大于 target,应该让 i 指针往上移动,即
    i=i−1。
  • 若 matrix[i][j]<target,说明这一列从当前位置开始往上的所有元素均小于 target,应该让 j 指针往右移动,即
    j=j+1。

若搜索结束依然找不到 target,返回 false。

时间复杂度 O(m+n)。其中 m 和 n 分别是矩阵的行数和列数。空间复杂度 O(1)。

class Solution(object):def searchMatrix(self, matrix, target):""":type matrix: List[List[int]]:type target: int:rtype: bool"""m, n = len(matrix), len(matrix[0])i, j = m - 1, 0while i >= 0 and j < n:if matrix[i][j] == target:return Trueif matrix[i][j] > target:i -= 1else:j += 1return False

运行结果

方法一

在这里插入图片描述

方法二

在这里插入图片描述

http://www.yayakq.cn/news/489509/

相关文章:

  • php网站开发if的代码广州天河区怎么样
  • 什么网站做执法仪wordpress网址采集
  • 备案名称和网站名称关键词优化推广排名多少钱
  • 国外对网站开发的研究wordpress post请求
  • 百度收录收费 重大网站如何用asp做网站
  • 设计网站推荐理由seo课程总结怎么写
  • 网站的建设属于无形资产网站更改备案信息吗
  • 外部asp网站 asp 内容家教网站怎么做
  • 长沙建站公司装修公司怎样拉客户
  • 贵阳中国建设银行招聘信息网站wordpress hacker
  • 国外怎么做直播网站网络服务器忙3008
  • 营销品牌网站建设如何注册公司邮箱
  • 珠海企业集团网站建设深圳技术支持 骏域网站建设
  • 网站建设服务协议 印花税58黄页
  • 花多少钱能把网站做到页面招聘网站建设的意义
  • 网站顶一下代码东莞好的网站建设效果
  • 新站整站快速排名西安市专业网站建设
  • sharepoint 网站开发东莞网站建设曼哈顿信科
  • 网站制作外包是怎么做的公司禁用网站怎么做
  • 宜昌市做网站浏览器正能量网站免费图片
  • 论坛门户网站开发东营市两学一做考试网站
  • 岱岳区建设信息网站wordpress的退款期限
  • 湖南北山建设集团网站自助网站建设平台
  • win7 asp.net网站架设海外运营是做什么的
  • 网站建设人员的分工西安机械加工网站建设
  • 建设集团招工信息网站网站开发用什么程序好
  • 上海智能网站建设设计安阳最好的网络推广公司
  • 能解析国外网站的dns重庆医院门户网站建设
  • 网站设计企业加盟网站制作运营
  • vr技术对网站建设有哪些影响中国建设银行电脑版