zoukankan      html  css  js  c++  java
  • LeetCode——Set Matrix Zeroes

    Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place.

    原题链接:https://oj.leetcode.com/problems/set-matrix-zeroes/

    题目:给定一个m * n 的矩阵。假设有一个元素是0。将其所在行和列设为0.

    思路:先记录下是0 的元素的位置。再去置0.

    	public void setZeroes(int[][] matrix) {
    		boolean firstRowZero = false,firstColumnZero = false;
    		for(int i=0;i<matrix.length;i++){
    			if(matrix[i][0] ==0){
    				firstColumnZero = true;
    				break;
    			}
    		}
    		for(int i=0;i<matrix[0].length;i++){
    			if(matrix[0][i] ==0){
    				firstRowZero = true;
    				break;
    			}
    		}
    		for(int i=1;i<matrix.length;i++){
    			for(int j=1;j<matrix[0].length;j++){
    				if(matrix[i][j] ==0){
    					matrix[i][0]=0;
    					matrix[0][j]=0;
    				}
    			}
    		}
    		for(int i=1;i<matrix.length;i++){
    			for(int j=1;j<matrix[0].length;j++){
    				if(matrix[i][0] ==0 || matrix[0][j]==0){
    					matrix[i][j]=0;
    				}
    			}
    		}
    		if(firstRowZero){
    			for(int i=0;i<matrix[0].length;i++)
    				matrix[0][i]=0;
    		}
    		if(firstColumnZero){
    			for(int i=0;i<matrix.length;i++)
    				matrix[i][0]=0;
    		}
    	}


  • 相关阅读:
    VS Code设置同步
    ASP.NET Core 发布
    CMD命令
    通过注册表为文件(夹)添加右键菜单
    win+r 以管理员身份运行
    .NET Core部署Windows服务
    .NET Core的打包到一个exe程序
    C#枚举
    C#生成Guid
    使用Visual Studio的单元测试
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/7026168.html
Copyright © 2011-2022 走看看