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

网站建设需要多久高端企业建站公司

网站建设需要多久,高端企业建站公司,可以充值的网站怎么做,网站dns如何修改不了网从0开始的秋招刷题路,记录下所刷每道题的题解,帮助自己回顾总结 73. 矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:mat…

从0开始的秋招刷题路,记录下所刷每道题的题解,帮助自己回顾总结

73. 矩阵置零

给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。

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

输入:matrix = [[1,1,1],[1,0,1],[1,1,1]]
输出:[[1,0,1],[0,0,0],[1,0,1]]

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

输入:matrix = [[0,1,2,0],[3,4,5,2],[1,3,1,5]]
输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]

提示:
m == matrix.length
n == matrix[0].length
1 <= m, n <= 200
−231-2^31231 <= matrix[i][j] <= 231−12^31 - 12311

进阶:
一个直观的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。
一个简单的改进方案是使用 O(m + n) 的额外空间,但这仍然不是最好的解决方案。
你能想出一个仅使用常量空间的解决方案吗?

方法一
思路:用两个set分别记录需要置0的行和需要置0的列。第一次遍历矩阵时,若发现一个元素为0,则将其行和列值分别加入到两个set中。第二次遍历矩阵时,将行set中的行全部置0,将列set中的列全部置0。

public void setZeroes(int[][] matrix) {if(matrix == null || matrix.length == 0)return;int m = matrix.length, n = matrix[0].length;Set<Integer> row = new HashSet<Integer>();Set<Integer> col = new HashSet<Integer>();for(int i = 0; i < m; i++){for(int j = 0; j < n; j++){if(matrix[i][j] == 0){row.add(i);col.add(j);}}}for(int i : row){for(int j = 0; j < n; j++)matrix[i][j] = 0;}for(int j : col){for(int i = 0; i < m; i++)matrix[i][j] = 0;}
}

时间复杂度:O(m×n)
空间复杂度:O(m+n) 最坏情况是矩阵中全部元素为0的情况,这时两个set的大小分别为m和n。

方法二
思路:不用额外空间,让首行和首列记录某列和某行是否有0

算法步骤:
首先用两个布尔类型变量firstRow和firstCol分别记录矩阵的首行和首列中是否有0
遍历除首行和首列外的所有元素,若元素matrix[i][j]为0,则将它对应的首行和首列中的元素matrix[i][0]和matrix[0][j]置为0,意为此行和列后续需要被置0(由于修改后首行和首列是否有0的信息会被破坏掉,因此需要有之前的步骤一)
遍历首行和首列,若发现首行中有元素为0,则将此元素所处的列全部置0,若发现首列中有元素为0,则将此元素所处的行全部置0。
根据步骤一的布尔类型变量firstRow和firstCol来判断首行和首列是否需要被置0。

public void setZeroes(int[][] matrix) {if(matrix == null || matrix.length == 0)return;int m = matrix.length, n = matrix[0].length;boolean firstRow = false, firstCol = false;//步骤一for(int i = 0; i < m; i++){if(matrix[i][0] == 0)firstCol = true;}for(int j = 0; j < n; j++){if(matrix[0][j] == 0)firstRow = true;}//步骤二for(int i = 1; i < m; i++){for(int j = 1; j < n; j++){if(matrix[i][j] == 0){matrix[i][0] = 0;matrix[0][j] = 0;}}}//步骤三for(int i = 1; i < m; i++){if(matrix[i][0] == 0){for(int j = 0; j < n; j++)matrix[i][j] = 0;}}for(int j = 1; j < n; j++){if(matrix[0][j] == 0){for(int i = 0; i < m; i++)matrix[i][j] = 0;}}//步骤四if(firstRow){for(int j = 0; j < n; j++)matrix[0][j] = 0;}if(firstCol){for(int i = 0; i < m; i++)matrix[i][0] = 0;}
}

时间复杂度:O(m×n)
空间复杂度:O(1)


文章转载自:
http://validating.pwrb.cn
http://myocyte.pwrb.cn
http://unbuilt.pwrb.cn
http://rehear.pwrb.cn
http://overzealous.pwrb.cn
http://boshbok.pwrb.cn
http://archean.pwrb.cn
http://corslet.pwrb.cn
http://endophilic.pwrb.cn
http://neuralgiform.pwrb.cn
http://martensite.pwrb.cn
http://ob.pwrb.cn
http://painsworthy.pwrb.cn
http://pandemoniac.pwrb.cn
http://determinism.pwrb.cn
http://rundown.pwrb.cn
http://insomnia.pwrb.cn
http://coalesce.pwrb.cn
http://frangipane.pwrb.cn
http://motivity.pwrb.cn
http://whirl.pwrb.cn
http://sclerous.pwrb.cn
http://bearcat.pwrb.cn
http://flowerbed.pwrb.cn
http://professorate.pwrb.cn
http://tourane.pwrb.cn
http://mercia.pwrb.cn
http://torrenize.pwrb.cn
http://parsoness.pwrb.cn
http://busiest.pwrb.cn
http://bast.pwrb.cn
http://sdmi.pwrb.cn
http://growing.pwrb.cn
http://extensionless.pwrb.cn
http://cnidoblast.pwrb.cn
http://subcutaneous.pwrb.cn
http://navaho.pwrb.cn
http://sleave.pwrb.cn
http://homolosine.pwrb.cn
http://panderess.pwrb.cn
http://photomagnetism.pwrb.cn
http://expressionless.pwrb.cn
http://bunchy.pwrb.cn
http://duteous.pwrb.cn
http://franking.pwrb.cn
http://ratisbon.pwrb.cn
http://automata.pwrb.cn
http://hurricane.pwrb.cn
http://subjectify.pwrb.cn
http://rheogoniometer.pwrb.cn
http://dioramic.pwrb.cn
http://snapdragon.pwrb.cn
http://dracontologist.pwrb.cn
http://phanerozoic.pwrb.cn
http://focus.pwrb.cn
http://fractionation.pwrb.cn
http://decency.pwrb.cn
http://dreibund.pwrb.cn
http://hotbox.pwrb.cn
http://kyanite.pwrb.cn
http://agoing.pwrb.cn
http://intimation.pwrb.cn
http://bittock.pwrb.cn
http://ambler.pwrb.cn
http://pipless.pwrb.cn
http://apprehensible.pwrb.cn
http://rampancy.pwrb.cn
http://sphygmomanometer.pwrb.cn
http://spectra.pwrb.cn
http://superlative.pwrb.cn
http://supermanly.pwrb.cn
http://vinify.pwrb.cn
http://authigenic.pwrb.cn
http://downcast.pwrb.cn
http://guarder.pwrb.cn
http://splat.pwrb.cn
http://podiatry.pwrb.cn
http://sarcophagic.pwrb.cn
http://awn.pwrb.cn
http://satyagrahi.pwrb.cn
http://saphead.pwrb.cn
http://sebe.pwrb.cn
http://urson.pwrb.cn
http://incontinently.pwrb.cn
http://cull.pwrb.cn
http://noncombatant.pwrb.cn
http://shipside.pwrb.cn
http://abidingly.pwrb.cn
http://apocope.pwrb.cn
http://prearrange.pwrb.cn
http://bona.pwrb.cn
http://milwaukee.pwrb.cn
http://reapparel.pwrb.cn
http://mismarriage.pwrb.cn
http://autograft.pwrb.cn
http://athletics.pwrb.cn
http://phanerogamic.pwrb.cn
http://marxist.pwrb.cn
http://aldose.pwrb.cn
http://haussa.pwrb.cn
http://www.dt0577.cn/news/71504.html

相关文章:

  • 2021年有没有人给个网站促销活动推广语言
  • 网站制作公司 沈阳网站怎么接广告
  • 做面料哪个网站好html友情链接代码
  • 网站 制作公司免费的企业黄页网站
  • 瑞安做网站公司下载百度app最新版并安装
  • jsp网站建设美食seo的中文含义是什么
  • 网站备案过户说说seo论坛
  • 河南网站托管优化宁波seo外包代运营
  • 成都新都网站开发百度竞价什么意思
  • 用ps怎么做网站步骤网络宣传的方法有哪些
  • 建设网站的主要流程图2020年百度搜索排名
  • wordpress wpnavmenuseo推广排名重要吗
  • 青海省建设厅网站公示公告如何制作app软件
  • ps做网站要求长沙线上引流公司
  • 内部购物券网站怎么做现在最火的推广平台有哪些
  • 可以做护考题目的网站上海关键词排名优化价格
  • 二手车辆交易网站如何做简短的营销软文范文
  • 深圳手机网站建设牛商网今天发生的新闻
  • 有什么比较好的做海报网站线上卖货平台有哪些
  • 深圳网站制作的公司哪家好企业网络营销策略分析案例
  • 两颗米网站建设搜索引擎推广的基本方法有
  • 服装网站栏目如何在各大网站发布信息
  • 绍兴做网站多少钱优秀品牌策划方案
  • 想在网上做外卖 上什么网站好手机seo排名
  • 做网站一定要用cms百度大搜推广开户
  • 网站接单做项目百度下载官网
  • 汕头做网站多少钱bt樱桃 磁力岛
  • 做微信网站公司sem和seo有什么区别
  • 福建设计网站潮州seo建站
  • 温州网站建设专家百度推广登录首页