Set Matrix Zeros
2015-07-08 22:38
330 查看
Question:
Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.
Solution:
Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.
Solution:
class Solution { public: void setZeroes(vector<vector<int>>& matrix) { int m=matrix.size(); int n=matrix[0].size(); vector<int> a; for(int i=0;i<matrix.size();i++) for(int j=0;j<matrix[i].size();j++) a.push_back(matrix[i][j]); vector<int> b(a); vector<int>::iterator iter=b.begin(); for(int i=0;i<a.size();i++) { if(0==a[i]) { for(int j=0;j<n;j++) { *(iter+(i/n)*n+j)=0; } for(int k=0;k<m;k++) { *(iter+k*n+i%n)=0; } } } vector< vector<int> >matrix_temp; vector<int> p; for(int i=0;i<b.size();i++) { p.push_back(b[i]); if(i%n==n-1) { matrix_temp.push_back(p); p.erase(p.begin(),p.end()); } } matrix =matrix_temp; } };
相关文章推荐
- 使用读写锁解决读者-写者问题
- 读《30年后,你拿什么养活自己?》有感
- LeetCode 33, Search in Rotated Sorted Array-----Binary Search
- 搬家了。
- C#运算符的优先级
- HTML 调用JavaScript脚本
- js/jquery关于元素坐标的总结
- log4j笔记
- POJ 1004:Financial Management
- Codeforces 3 C. Tic-tac-toe
- ZOJ 3747 Attack on Titans
- 虚拟机安装Mac os 出现 Vmware Virtual STAT CDROM Drive(1,0) unsuccessful的解决办法
- Xamarin.Android开发实践(十六)
- Gray Code
- POJ 1004:Financial Management
- Linux文件系统详解
- 【OpenCV学习】计算两幅图像的重叠区域
- Matalb符号矩阵输入BUG
- Hadoop 2.4.1 搭建Ha遇到问题记录
- 又做了个小工具, 个人用的通讯录管理