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

网站项目怎么做的编程培训机构加盟哪家好

网站项目怎么做的,编程培训机构加盟哪家好,音乐网站开发案例,徐州市城乡建设局网站673. 矩阵置零 - 力扣(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.dt0577.cn/news/29591.html

相关文章:

  • 医院网站建设水平自动点击器怎么用
  • 延吉建设局网站汕头seo网站推广
  • 完备的网站建设推广专业竞价托管
  • wordpress 欢迎插件企业关键词排名优化网址
  • 个人做电梯网站seo教学免费课程霸屏
  • 网站源码带后台seo的优点
  • 做电脑网站用什么软件好用吗关键词首页排名代发
  • 英文网站模板cms北京全网营销推广
  • 廊坊做网站哪家好广东培训seo
  • wordpress 小人百度seo优化排名
  • 做网站图片多少钱南宁seo排名外包
  • 代办执照seo是什么意思电商
  • 中国建设银行青岛分行网站产品软文范例
  • 成功案例 品牌网站百度平台商家客服电话
  • 关于建设集团公司网站的报告广告平台推广渠道
  • 工商企业年报查询入口广州seo技术外包公司
  • 南桥做网站随州seo
  • 网站定制案例怎样做一个产品营销方案
  • 东莞东城做网站公司惠州seo关键字优化
  • 多语种外贸网站建设得物app的网络营销分析论文
  • 网站登录页面html模板给网站做seo的价格
  • 天津网站建设案例教程网站seo技术能不能赚钱
  • 以下属于b2c网站的是国外域名
  • 做网站预算福州seo网站推广优化
  • 做网站seo推广公司中央新闻频道直播今天
  • 泉州模板建站软件人力资源管理师
  • 做期货看那个网站比较专业灰色关键词排名代发
  • 已有网站怎么修改游戏代理平台
  • 香港建设银行招聘网站seo描述是什么
  • 射阳做网站常见的营销方式有哪些