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

网站在建设中模板推广

网站在建设中模板,推广,技术先进的网站建,永久开源的免费建站系统题目描述: 给定一个 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/482690/

相关文章:

  • 新昌建设局网站wordpress会员小图标
  • 沈阳app制作seo快速排名软件易下拉霸屏
  • 网站返回首页怎么做网站服务公司有哪些
  • 怎么建设网站怎么样国内搜索引擎优化的公司
  • 外卖优惠券网站怎么做杭州网络推广网络优化
  • 做网站切片浏览器网页版打开网页
  • 大型大型网站建设方案上海闵行中心医院
  • iis做网站上传速度慢开展门户网站建设
  • 免费的行情网站下载安装商城网站后台模板
  • 聊天软件开发妙招seo学校
  • 建设部执业注册中心网站大连网站建设 仟亿
  • 四平市网站建设常德哪里有做网站
  • 汽车软文广告柳州网站seo网站s
  • 百度seo通科优化wordpress登录页插件
  • 街区网站建设上海wordpress
  • 小型网站2022最火营销方案
  • 湘潭做网站 搜搜磐石网络湖南省建设厅官网查询
  • 英文电商网站建设商城用什么系统做网站
  • 电子商务网站建设与管理课程的目的群晖 卸载wordpress
  • 招商加盟网站模板html百度人工智能
  • iis5.1新建网站公司做免费网站建设
  • 分类目录网站程序168分类信息发布网
  • 切图网站建设深圳网站建设选哪家
  • 微信小程序 购物网站开发自贡网站建设哪家好
  • 苏州网站建设培训seo自动优化工具
  • 网站开发项目私活wordpress让小工具支持简码
  • 做小程序好还是做微网站好wordpress卡蜜
  • 群晖可以做网站服务器网站建设需要费用
  • 牛商网网站建设海南省住房公积金管理局app
  • 开个网站做代理服务器seo关键词优化外包公司