清除行列
2016-03-29 16:47
381 查看
题目描述
请编写一个算法,若MxN矩阵中某个元素为0,则将其所在的行与列清零。给定一个MxN的int[][]矩阵mat和矩阵的阶数n,请返回完成操作后的int[][]矩阵,保证n小于等于300,矩阵中的元素为int范围内。
测试样例:
[[1,2,3],[0,1,2],[0,0,1]]
返回:[[0,0,3],[0,0,0],[0,0,0]]
import java.util.*; public class Clearer { public int[][] clearZero(int[][] mat, int n) { // write code here boolean[] row = new boolean[mat.length]; boolean[] column = new boolean[mat[0].length]; for(int i = 0 ;i < mat.length;++i) { for(int j = 0 ;j < mat[0].length;++j) { if(mat[i][j] == 0) { row[i] = column[j] = true; } } } for(int i = 0 ;i < mat.length;++i) { for(int j = 0 ;j < mat[0].length;++j) { if(mat[i][j] !=0 && (row[i] || column[j])) mat[i][j] = 0; } } return mat; } }
相关文章推荐
- intellij idea15,SVN commit file提示No changes detected
- 代码规范
- Android SlidingMenu菜单栏程序设计开发
- 搭建elasticsearch,并同步mysql数据
- uva11090Going in Cycle!!【bellman二分判负环】
- ajax在实际应用中是要选择同步还是异步
- Android MediaPlayer 框架UML图
- HDUoj4857逃生 拓扑排序
- Linux网络编程入门 (转载)
- 软件测试职业规划
- Bzoj3343:教主的魔法:分块
- HDUoj4857逃生 拓扑排序
- Ninject简介
- HDU 5640 King's Cake(贪心)
- 将MATLAB的变量数据导入到C/C++程序中的方法!
- java锁的种类以及辨析
- gitorious使用在ubuntu
- Ubuntu常用命令大全
- 浅谈《软件工程》
- Android SDK Manager 更新代理配置