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

电机东莞网站建设网站制作价格情况

电机东莞网站建设,网站制作价格情况,企业手机app开发公司,网站参考模板题目: 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例 1: 输入:matrix [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16…

题目:

编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:

每行的元素从左到右升序排列。
每列的元素从上到下升序排列。

示例 1:

 输入: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


思路1: 

这道题首先会想到用暴力,依次遍历二维数组,如果发现与目标值相同的数则返回true。

但是又会进一步思考,有没有就是可以一次性排除一行或一列的数字的情况。这就是缩减空间的思想。双指针的用法就是这一思想的应用。

但这道题就用一个指针,这个指针的设置也很巧妙。将这个指针一开始指在二维数组的右上角。这个指针怎么表示,其实就是行row=0,列col=*matrixColSize-1;

如果指的这个数大于目标数,那么就可以排除指针这一列的所有数。这个时候指针向左移动。

col--;

如果指的这个数小于目标数,那么就可以排除指针左边这一行的所有数。这个时候指针向下移动。row++;

直到指针所指的这个数等于目标数为止。 


代码1:

bool searchMatrix(int** matrix, int matrixSize, int* matrixColSize, int target){int row=0;int col=*matrixColSize-1;while(row < matrixSize && col >= 0){if(matrix[row][col]>target){col--;}else if(matrix[row][col]<target){row++;}else{return true;}}return false;
}
http://www.yayakq.cn/news/233029/

相关文章:

  • 学校网站制作一级建造师专业对照表
  • 建设网站图片福建住房和城乡建设厅网站一体化平台
  • 塘沽做网站公司网站建设类的职位
  • 深圳网站建设定制先四年疫后灾
  • 深圳网站建设设计如何部署wordpress
  • 申请网站建设费用的请示今天新闻事件
  • 江西建设厅网站电子手机免费建站平台下载
  • wordpress手机登录跳转页面seo搜索引擎官网
  • 广州开发网站ddns域名注册
  • nginx 网站建设遵义城乡建设网站
  • 百度网站官方认证怎么做物流网站功能
  • 上海做网站的公司哪个好抖音seo优化
  • 网站1g的空间能用多久新乡搜索引擎优化
  • 财政网站平台建设不足岳阳市内从事网站建设的公司
  • 响应式网站模仿泰国做网站
  • 揭阳做网站的网站建设管理调研提纲
  • 网站去掉index.html仿it资讯类网站源码
  • 网站建设运维方案网站设计师图片
  • 做网站的什么行业好出单电子商务网站建设经费
  • 杭州建站模板搭建温州专业营销网站
  • 养车网站开发做视频解析网站是犯法的么
  • wordpress整站手机端美食网站html代码
  • 网站平台都有哪些世界500强企业排行
  • 怎么做网站搜索框搜索陕西省水利厅网站建设与管理处
  • 做网站行业做企业网站到哪里找
  • 木门网站模板上海网站建设开发
  • 东莞网站建设哪个平台好个人可以做网站吗
  • 平凉市建设局门户网站天津企业网站建设
  • 商务网站建设工程师是环球资源网站什么时候做的
  • 没有网站的域名wordpress局域网外网访问不了