【7】清楚行列
阿新 • • 發佈:2017-05-31
c++ cas test strong line logs arr 編寫 new 和矩陣的階數n,請返回完成操作後的int[][]方陣(C++中為vector<vector>),保證n小於等於300,矩陣中的元素為int範圍內。
測試樣例:
【題目】
請編寫一個算法,若N階方陣中某個元素為0,則將其所在的行與列清零。 給定一個N階方陣int[][](C++中為vector>)mat和矩陣的階數n,請返回完成操作後的int[][]方陣(C++中為vector>),保證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) {boolean[] rowArr = new boolean[n]; boolean[] colArr = new boolean[n]; for(int i = 0; i < n; i++){ for(int j = 0; j < n; j++){ if(mat[i][j] == 0){ rowArr[i] = true; colArr[j] = true; } } }for(int i = 0; i < n; i++){ for(int j = 0; j < n; j++ ){ if(rowArr[i] || colArr[j]){ mat[i][j] = 0; } } } return mat; } }
請編寫一個算法,若N階方陣中某個元素為0,則將其所在的行與列清零。
給定一個N階方陣int[][](C++中為vector<vector>)mat
[[1,2,3],[0,1,2],[0,0,1]]
返回:[[0,0,3],[0,0,0],[0,0,0]]
【7】清楚行列