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

网站定制制作公司在线logo制作免费

网站定制制作公司,在线logo制作免费,山东天成水利建设有限公司网站,怎么样关键词优化题目描述: 给定一个 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…

题目描述:

给定一个 m x n 的矩阵,如果一个元素为 ,则将其所在行和列的所有元素都设为 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 <= matrix[i][j] <= 231 - 1

进阶:

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

通过次数

286.9K

提交次数

446.4K

通过率

64.3%

思路和题解:

一、先遍历一次矩阵,用一个数组row和一个数组col标记要置零的行和列,随后再遍历一次矩阵,如果矩阵所在行或列要置0,那就变零。时间复杂度O(m*n),空间复杂度O(m+n)

代码:

class Solution {
public:void setZeroes(vector<vector<int>>& matrix) {int m=matrix.size();int n=matrix[0].size();//记录要置零的行和列vector<int> row(m,0);vector<int> col(n,0);for(int i=0;i<m;i++)for(int j=0;j<n;j++)if(matrix[i][j]==0)row[i]=col[j]=1;for(int i=0;i<m;i++)for(int j=0;j<n;j++)if(row[i]==1||col[j]==1)matrix[i][j]=0;}
};

二、方法一的改进,矩阵的第一行和第一列代替col和row,实现O(1)空间复杂度,但矩阵的第一行和第一列有交叉,交叉的位置既要标记第一行是否出现零,又要标记第一列是否出现零,所以我们应该额外设置一个变量flag,flag与matrix[0][0]一个标记第一行是否出现零,一个标记第一列是否出现零。

代码:

lass Solution {
public:void setZeroes(vector<vector<int>>& matrix) {int m=matrix.size();int n=matrix[0].size();bool flag_col0=false;//标记for(int i=0;i<m;i++){if(matrix[i][0]==0) flag_col0=true;for(int j=1;j<n;j++){if(matrix[i][j]==0)matrix[i][0]=matrix[0][j]=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(matrix[0][0]==0)for(int j=0;j<n;j++) matrix[0][j]=0;if(flag_col0==true)for(int j=0;j<m;j++) matrix[j][0]=0;}
};

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

相关文章:

  • sharepoint 网站开发天都城网站建设
  • 厦门网站建设兼职医院网站
  • 常熟网站制作哪家好专门做二手的网站
  • 番禺区怎么做网站建设重庆市建设工程信息网怎么查询不到安全管理证书
  • 怎么做网站演示六盘水网站建设求职简历
  • 棋牌类网站是用游戏方式做的吗网站开发预算怎么算
  • 网站数据分析wordpress 商城
  • netcore网站开发实战平顶山哪里有做网站的公司
  • 西安网站开发公司排名植物网站建设
  • 济南网站建设有限公司网站seo关键词设置
  • 网络公司哪个最好怎么样优化关键词排名
  • 网站的劣势新wordpress仿站
  • 优秀的手机网站电子及商务网站建设报告
  • 织梦做旅游网站工程公司简介模板
  • 合肥市建设网站市场信息价自己做的网站不能用手机访问
  • 母婴网站 模板网站菜单代码
  • 怎样去建设厅网站核实身份公司网站托管
  • 南阳手机网站建设电子商务作业做网站
  • 云畅网站建设成都住建局官网查询系统网址
  • 网站建设宣传海报广州公司注册网上核名
  • 建设银行联号查询网站淄博seo服务
  • 阿里云服务器创建多个网站网页传奇公益服
  • 网站策划方案书的内容淄博汽车网站建设
  • php猎奇源码 织梦新闻视频图片八卦娱乐趣事资讯门户网站模板如何看网站是谁做的
  • 贵州建设职业技术学院网站.net开发的网站 能做成app吗
  • 商品网站策划书网站开发教程云盘
  • 网站降权处理做网站多少钱
  • 商城网站建设价格费用wordpress更改数据库域名链接
  • 做婚姻网站流程如何用wordpress
  • 制作服务网站一个好的产品怎么推广