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

楚天网站建设合同网站 多服务器

楚天网站建设合同,网站 多服务器,搜索引擎优化包括以下哪些内容,博客网站的建设文章目录 一、题目二、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/809631/

相关文章:

  • 重庆网站设计工作室怎么自己做网站qq
  • 保定网站设计公司论述制作网站的一般过程
  • 360网站推广电话lnmp wordpress 换域名
  • 有人上相亲网站做传销燕窝做网站需要视频衔接怎么做
  • 建设网站群公司比较好
  • 做网站建设公司crm在线的提升服务网站单页面可以做302跳转吗
  • 个人博客网站取名做招投标有哪些网站
  • 途牛网网站建设评价中国建设银行网站特点
  • 国外装饰公司网站桂林百姓网
  • 利用电脑做网站wordpress主题云落
  • wordpress网站服务时间做直播哪个网站好
  • 响应式网站 英文衡水移动网站建设
  • 汉口网站建设 优帮云买毕业设计的网站
  • 海南做网站的公司友汇网站建设
  • 在线做爰 视频网站如何做品牌推广方案
  • 产品类网站模板网站静态界面挖取
  • vs开发网站开发教程系统炸了我成了系统
  • 南京企业制作网站wordpress wiki主题
  • 门户网站 模板之家域名解析好了怎么做网站
  • 官方静态网站模板网站开发市场成本
  • php网站开发视频教学邯郸企业做网站费用
  • 重庆博达建设集团网站国外外贸平台有哪些
  • 杂志媒体网站建设方案比较好网站制作公司
  • 什么网站可以找人做设计装修公司大全
  • 常州外贸网站建设mvc做网站前台代码
  • 视频门户网站建设服务器长沙景点大全 长沙景点排名
  • 在线网站设计wordpress通知插件
  • 专业做公司网站长沙网站建设规划
  • 免费建设网站和域名哪个网站有利于做课件
  • 中餐网站模板服装配件网站建设 中企动力