Set Matrix Zeroes
来源:互联网 发布:通讯录医生是什么软件 编辑:程序博客网 时间:2024/06/09 18:17
public:
void setZeroes(vector<vector<int>>& matrix) {
vector<vector<int>> ivec(matrix);
int m=matrix.size();
int n=matrix[0].size();
vector<int> zero(n,0);
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
if(matrix[i][j]==0)
{
for(int k=0;k<m;k++)
ivec[k][j]=0; //注意
ivec[i]=vector<int>(n,0); // ivec[i].assign(zero.begin(),zero.end());
}
}
}
matrix=ivec; //两个vector可以直接用等于号;
return;
}
};
两个bool数组,存下每行每列是否有0;
class Solution {
public:
void setZeroes(vector<vector<int>>& matrix) {
// vector<vector<int>> ivec(matrix);
int m=matrix.size();
int n=matrix[0].size();
bool row[m]={0};
bool col[n]={0};
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
if(matrix[i][j]==0)
{
row[i]=1;
col[j]=1;
}
}
}
for(int i=0;i<m;i++)
{
if(row[i])
fill(&matrix[i][0],&matrix[i][0]+n,0);
}
for(size_t j=0;j<n;++j)
{
if(col[j])
{
for(size_t i=0;i<m;++i)
{
matrix[i][j]=0;
}
}
}
return;
}
};
- LeetCode: Set Matrix Zeroes
- Set Matrix Zeroes
- Set Matrix Zeroes
- LeetCode Set Matrix Zeroes
- [Leetcode] Set Matrix Zeroes
- LeetCode: Set Matrix Zeroes
- Set Matrix Zeroes
- Leetcode: Set Matrix Zeroes
- [LeetCode] Set Matrix Zeroes
- Set Matrix Zeroes
- Set Matrix Zeroes
- [LeetCode]Set Matrix Zeroes
- Set Matrix Zeroes
- Set Matrix Zeroes
- Set Matrix Zeroes
- [leetcode]Set Matrix Zeroes
- Leetcode:Set Matrix Zeroes
- Set Matrix Zeroes
- 离别
- 奖学金文章连载1北京51班 任伟伟
- hdu 5294 Tricks Device(15多校第一场1007)(spfa+最小割)
- 杭电1425sort
- 【翻译】如何创建Ext JS暗黑主题之二
- Set Matrix Zeroes
- 史上最全 前端开发面试问题及答案整理 http://segmentfault.com/blog/trigkit4/1190000002562454
- GCD 深入理解(二)
- hdu 5296 Annoying problem(15多校第一场1009)(在线lca+dfs序)
- Reproducible Research in Computational Science
- HTTP协议讲解
- 数据结构与算法分析1.8
- HDU 5296 Annoying problem LCA+树状数组
- 模拟银行系统(数据库设计)