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

怎么塔建网站上海装修找哪家公司好

怎么塔建网站,上海装修找哪家公司好,网站产品图怎么做,好视通视频会议app下载安装目录 题目描述解法方法一:二分查找方法二:从左下角或右上角搜索 运行结果方法一方法二 题目描述 给你一个满足下述两条属性的 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/180265/

相关文章:

  • 网站建设成功案例怎么写网易官网建立个人网站
  • 网站策划专有技术宁波seo行业公司推荐
  • 做网站 每月赚 钱皮肤科医生免费问诊
  • 建建建设网站公司网站wordpress怎么看代码
  • 潮州专业网站建设制作昆明自助建站模板
  • 河北省建设厅网站老版wordpress列表分页 js
  • 中国工程建设质量管理协会网站做词云的网站
  • 科技数码app排名快速排名seo
  • 电子商务网站用户行为分析及服务推荐北京展示型网站
  • 做淘宝差不多的网站吗微网站建设合同
  • php和django做网站哪个好win8风格手机网站模板
  • 怎样做公司的网站建设app使用什么做的网站
  • 以下可以制作二维码的网站为广西执业药师培训网站
  • 关键词设定在网站上大地影院资源免费观看视频
  • 支付公司网站建设费账务处理网页设计与网站组建
  • 建站城站长统计黄页网站下载大全
  • 怎么做点击图片进网站如何制作微信链接
  • 响应式门户网站模板国内python 做的网站
  • 网站优化3个关键词和10个关键词的区别电子商务网站运营流程
  • 企业网站优化包括哪三个层面关于电子商务网站建设的论文
  • 什么是网站建设中的专用主机vs做网站的书籍
  • 家居网站建设流程logo图片大全
  • 广东省网站设计与开发怎么挑选网站主机
  • 中卫网站定制开发价格法库综合网站建设方案
  • 纵横天下网站建设wordpress页面排版
  • 商会网站建设开发局域网网站建设步骤
  • wordpress建淘宝客网站吗免费ppt模板资源
  • 北京学会网站建设衣柜推拉门图案设计网站
  • 官方网站旗舰店wordpress付费站内搜索
  • 长沙做网站的故事网站开发招聘需要