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

海口网站建设哪个好薇百度seo学院

海口网站建设哪个好薇,百度seo学院,企业网站营销常用的方法,wordpress单击图片73. 矩阵置零 - 力扣(LeetCode) 暴力解法 用两个标记数组分别记录每一行和每一列是否有零出现。 遍历该数组一次,如果某个元素为 0,那么就将该元素所在的行和列所对应标记数组的位置置为 true。再次遍历该数组,用标…

73. 矩阵置零 - 力扣(LeetCode)

暴力解法

用两个标记数组分别记录每一行和每一列是否有零出现。

  • 遍历该数组一次,如果某个元素为 0,那么就将该元素所在的行和列所对应标记数组的位置置为 true。
  • 再次遍历该数组,用标记数组更新原数组即可。

时间复杂度:O(mn),其中 m 是矩阵的行数,n 是矩阵的列数。至多只需要遍历该矩阵两次。

空间复杂度:O(m+n),其中 m 是矩阵的行数,n 是矩阵的列数。需要分别记录每一行或每一列是否有零出现。

public class Solution {public void SetZeroes(int[][] matrix) {int m = matrix.Length, n = matrix[0].Length;bool[] row = new bool[m];bool[] col = new bool[n];for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {if (matrix[i][j] == 0) {row[i] = col[j] = true;}}}for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {if (row[i] || col[j]) {matrix[i][j] = 0;}}}}
}

使用两个标记变量

使用两个额外的变量记录原矩阵的第一行第一列是否包含0。之后便可以修改matrix[0][j]和 matrix[i][0]的数据。

用原矩阵的 第一行 matrix[0][j] 和第一列 matrix[i][0],来代替原来的两个标记数组,从而减少使用的空间。

public class Solution {public void SetZeroes(int[][] matrix) {int m = matrix.Length, n = matrix[0].Length;bool flagCol0 = false, flagRow0 = false;//第一列for(int i = 0; i < m; i++){if(matrix[i][0] == 0){flagCol0 = true;break;}}//第一行for(int j = 0; j < n; j++){if(matrix[0][j] == 0){flagRow0 = true;break;}}//从第二行第二列开始遍历矩阵,将0结点的行列保存在第一行第一列中for(int i = 1; i < m; i++){for(int j = 1; j < n; j++){if(matrix[i][j] == 0)matrix[i][0] = matrix[0][j] = 0;}}//从第二行第二列开始遍历矩阵,根据第一行第一列中的的0修改for(int i = 1; i < m; i++){for(int j = 1; j < n; j++){if(matrix[i][0] == 0 || matrix[0][j] == 0)matrix[i][j] = 0;}}//修改第一列if(flagCol0){for(int i = 0; i < m; i++)matrix[i][0] = 0;}//修改第一行if(flagRow0){for(int j = 0; j < n; j++)matrix[0][j] = 0;}}
}

时间复杂度:O(mn),其中 m 是矩阵的行数,n 是矩阵的列数。我们至多只需要遍历该矩阵两次。

空间复杂度:O(1)。我们只需要常数空间存储若干变量。

http://www.yidumall.com/news/45671.html

相关文章:

  • 什么是网络营销4p策略朝阳区seo技术
  • 家居企业网站建设策划企业网站建设的目的
  • 网站编写软件1个百度指数代表多少搜索
  • 可以做微信推送的网站谷歌广告开户
  • 自己怎么做外贸批发网站互联网十大企业
  • 网站做维恩图怎么做网站主页
  • 建网站的小软件淘宝美工培训
  • 六年级做网站的软件推广排名
  • 南京建设网站首页seo诊断工具
  • 沈阳网站做最新域名ip地址
  • 找建设项目的网站全国疫情一览表
  • 做网站的上市公司有哪些怎么开通网站平台
  • 人民日报批评石家庄疫情手机seo百度点击软件
  • 临沂做商城网站西安专业做网站公司
  • python做的网站多吗seo权重优化
  • 怎么做网站评估永州网站seo
  • 网站建设中源码百度ai开放平台
  • 论坛型网站怎么做大数据营销名词解释
  • java公益网站开发培训班学员培训心得
  • 做电影网站选择什么配置的服务器优化服务公司
  • 岫岩做网站广州网站优化排名
  • 天津自贸区建设局网站软文营销的五个步骤
  • 用开源吗做的网站可以用吗中国十大广告公司排行榜
  • 一起做网店网站靠谱么如何做网络营销推广
  • 做网站不给源码程序新能源汽车公司
  • 对网站访客做简要分析网络营销推广实战宝典
  • 如何得到网站后台权限如何建立免费公司网站
  • 创新性网站建设seo销售代表招聘
  • 企业展示网站 价钱郑州seo网站管理
  • 英国做bus网站手机推广平台有哪些