[73] 矩阵置零

复制代码
 1 /**
 2  * @param {number[][]} matrix
 3  * @return {void} Do not return anything, modify matrix in-place instead.
 4  */
 5 const setZeroes = function (matrix) {
 6   const yLen = matrix.length;
 7   const xLen = matrix[0].length;
 8   for (let i = 0; i < yLen; i++) {
 9     let left = 0;
10     let right = 0;
11     for (; right < xLen; right++) {
12       if (matrix[i][right] === 0 || matrix[i][right] === '0') {
13         if (matrix[i][right] === 0) {
14           for (let k = 0; k < i; k++) {
15             matrix[k][right] = null;
16           }
17           for (let k = i + 1; k < yLen; k++) {
18             if (matrix[k][right] === 0) {
19               matrix[k][right] = '0';
20             } else {
21               matrix[k][right] = null;
22             }
23           }
24         }
25         for (let j = left; j < right; j++) {
26           matrix[i][j] = null;
27         }
28         for (; right < xLen - 1; right++) {
29           if (matrix[i][right + 1] === 0) {
30             break;
31           }
32           matrix[i][right + 1] = null;
33         }
34         left = right;
35       }
36     }
37   }
38   for (let i = 0; i < yLen; i++) {
39     for (let j = 0; j < xLen; j++) {
40       matrix[i][j] = Number(matrix[i][j]);
41     }
42   }
43   return matrix;
44 
45 };
复制代码

 

posted @   人恒过  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本

阅读目录(Content)

此页目录为空

点击右上角即可分享
微信分享提示