描述:
编写一个算法,若M*N矩阵中的某个元素为0,则将其所在的行与列清零;
function metrix_checker(arr) { if(!arr.length || arr.length == 0) throw new Error("arr should be a array"); var lows=[]; var colums=[]; for(var i=0; i<arr.length; i++) { if(!arr[i].length) throw new Error("arr should be two-dimensional array"); for(var j=0; j<arr[i].length; j++){ if(arr[i][j] == 0) { lows.push(i); colums.push(j); } } } var low = lows.pop(); while(low) { arr[low].fill(0); low = lows.pop(); } var colum = colums.pop(); while(colum){ for(var i=0; i<arr.length; i++){ arr[i][colum] = 0; } colum = colums.pop(); } return arr; } var matrix = [[1,2,3],[3,4,5],[6,0,8]]; console.log(metrix_checker(matrix).join(‘,‘));
原文:http://www.cnblogs.com/ppyst/p/5331111.html