LeetCode 73 矩阵置零 - 原地算法
思路
目标是判断每一行、每一列是否需要置零。常规做法需要 m + n 的额外空间,但题目要求原地修改,所以要复用矩阵本身做标记。
- 某一行一旦出现
0,该行最终都会被置零,因此可以用该行第一个元素作为行标记。 - 同理,可用每一列的第一个元素作为列标记。
- 另外用两个额外变量记录第一行和第一列是否原本含
0,避免标记过程覆盖原信息。
如果第 i 行原本没有 0,那么该行第一个元素不会被错误覆盖,原数组信息可以被正确保留。
目标是判断每一行、每一列是否需要置零。常规做法需要 m + n 的额外空间,但题目要求原地修改,所以要复用矩阵本身做标记。
0,该行最终都会被置零,因此可以用该行第一个元素作为行标记。0,避免标记过程覆盖原信息。如果第 i 行原本没有 0,那么该行第一个元素不会被错误覆盖,原数组信息可以被正确保留。