Skip to content

Commit 8c73480

Browse files
committed
replace range with enumerate & small optimization
1 parent 11814ca commit 8c73480

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

Python/chapter01/1.8 - Zero Matrix/miguel_1.8_sol.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,20 @@ def zero_matrix(matrix: List[List[int]]) -> List[List[int]]:
2222
zeroed_rows = set()
2323
zeroed_cols = set()
2424

25-
for row in range(M):
26-
for col, num in enumerate(matrix[row]):
27-
if num != 0 or row in zeroed_rows or col in zeroed_cols:
25+
for i, row in enumerate(matrix):
26+
for j, num in enumerate(row):
27+
if num != 0 or i in zeroed_rows or j in zeroed_cols:
2828
continue
2929
# otherwise, set row to 0 by looping through columns of current row
30-
for i in range(N):
31-
matrix[row][i] = 0
30+
for k in range(N):
31+
matrix[i][k] = 0
3232
# set column to 0 by looping through rows of current column
33-
for j in range(M):
34-
matrix[j][col] = 0
33+
for l in range(M):
34+
matrix[l][j] = 0
3535
# update zeroed row and col sets
36-
zeroed_cols.add(col)
37-
zeroed_rows.add(row)
36+
zeroed_cols.add(j)
37+
zeroed_rows.add(i)
38+
break
3839
return matrix
3940

4041

0 commit comments

Comments
 (0)