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

建设银行绑定手机号码网站今日新闻快讯

建设银行绑定手机号码网站,今日新闻快讯,如何做购物券网站,网上商城开发价格题目: 编写一个高效的算法来搜索 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.hrbkazy.com/news/31983.html

相关文章:

  • 网站建设教程软件下载网站备案查询官网
  • 网站的ftp帐号steam交易链接怎么看
  • 政协网站建设申请函各网站收录
  • 江苏连云港网站设计公司企业营销推广方案
  • 时时彩网站开发需要多少钱360网站关键词排名优化
  • 外贸网页设计公司优化网站怎么真实点击
  • 网站建设和网站开发百度网站分析
  • 网站推广营销怎么做郴州网站seo外包
  • 做分享衣服网站的初衷是什么意思销售外包
  • 中山做网站做的好的公司免费网站建站页面
  • 网站制作素材活动推广方案策划
  • 做网站功能国际军事新闻最新消息视频
  • vue.js做的网站百度推广外包哪家不错
  • 做网站py和php系列推广软文范例
  • wordpress seo 主题台州关键词优化推荐
  • 自己做网站可以盗图吗搜索推广渠道有哪些
  • 建筑行业网成都网站seo收费标准
  • 网站开发项目答辩视频网站seo完整seo优化方案
  • 微信公众号优惠和网站绑定怎么做网站建设方案推广
  • 做的比较好的网站全网seo是什么意思
  • 杭州网络营销网站2023年免费b站推广大全
  • 西宁的网站建设公司2022年新闻摘抄十条简短
  • 怎么让自己的网站通过域名访问不了app运营
  • 百度图在图不留网站方搜索引擎排名竞价
  • 唐山网站建设托管seo精灵
  • 北京建设网官方网站微博关键词排名优化
  • 黄页网站是什么软文素材网
  • 宁夏建设工程招投标管理中心网站网站交易平台
  • 微信企业网站html5模板seo 网站推广
  • 用哪个程序做网站收录好网络营销推广的目的