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

网站方案范文seo技术平台

网站方案范文,seo技术平台,开发工具eclipse,最新新闻事件内容文章目录 一、题目二、C# 题解 一、题目 编写一种算法,若M N矩阵中某个元素为0,则将其所在的行与列清零。 点击此处跳转题目。 示例 1: 输入: [ [1,1,1], [1,0,1], [1,1,1] ] 输出: [ [1,0,1], [0,0,0], [1,0,1] ] 示…

文章目录

  • 一、题目
  • 二、C# 题解

一、题目

  编写一种算法,若M × N矩阵中某个元素为0,则将其所在的行与列清零。

  点击此处跳转题目。

示例 1:

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

示例 2:

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

二、C# 题解

  此题有很多方法解,无外乎都是记录需要清零的行与列,这种写法太无聊了。这里提出一种递归的方式,只需要遍历矩阵一次即可。当遇到 0 时,使用 set0 变量记录该位置,遍历完成后,重置所有 set0

public class Solution {public void SetZeroes(int[][] matrix) {BFS(ref matrix, 0, 0); // 广度优先遍历}public void BFS(ref int[][] matrix, int i, int j) {int m = matrix.Length, n = matrix[0].Length;if (i == m && j == 0) return; // 递归出口// 计算下一个位置int next_i = i, next_j = j + 1;if (next_j == n) {next_j = 0;next_i++;}bool set0 = matrix[i][j] == 0;   // 记录当前状态,是否需要清零BFS(ref matrix, next_i, next_j); // 继续遍历// 最后执行清零if (set0) {for (int p = 0; p < n; p++) matrix[i][p] = 0;for (int q = 0; q < m; q++) matrix[q][j] = 0;}}
}
  • 时间复杂度: O ( m × n ) O(m\times n) O(m×n)
  • 空间复杂度:由矩阵中 0 出现的次数决定。

  该方法依据元素记录,因此当矩阵中 0 出现次数过多时,会有重复操作,只适合处理稀疏 0 矩阵。

  矩阵中 0 过于密集时,使用记录行列的方式会更好些,但可能需要更多的空间和遍历次数。

http://www.yayakq.cn/news/261019/

相关文章:

  • 雄安专业网站建设方案定制app开发需求
  • 长春标准网站建设swing做网站
  • 用eclipce做登录网站网站开发制作心得
  • dw织梦做网站wordpress用户邮箱验证
  • 网站建设赚钱如何查看网站语言
  • 游乐场网站开发电商网站 模板
  • 淘宝客建站教程保定百度seo排名
  • 做网站的意义大不大商城网站开发解决方案
  • 成都网站优化步骤优秀版式设计
  • 模版网站做支付功能产品单页设计模板
  • 深圳分销网站设计价格电子商务网站建设的范围是什么意思
  • 长沙网站排名优化报价贵阳网站建设q.479185700棒
  • 网站建设和谷歌优化ppt模板下载官网
  • 做网站市场价格白云网站建设公
  • dw做的手机端网站南沙网站建设价格
  • 网站首页 排版哈尔滨网络公司招聘信息
  • 注册二级建造师查询入口网站优化我自己可以做吗
  • 申请手机网站辽宁企业信息公示系统
  • 广州网站公司建设网站更换模板对网站seo的影响
  • 手机网站切图企业名录搜索软件排名
  • 学校网站如何建设流媒体网站开发pdf
  • 上海外贸网站建设进入百度搜索网站
  • 网站开发+协作平台linux xampp wordpress
  • 网站后端开发软件最好的科技网站建设
  • 百度站长反馈网站建设 岗位职责
  • 建设网站投资多少钱混合式教学财务管理网站建设
  • 视觉设计原则盐城seo营销
  • 莆田建网站公司公司门面网站设计
  • 网站建设 展滔科技大厦wordpress修改默认头像
  • iis wordpress多站点建设局查询网站首页