【leetcode】73. 矩阵置零
void setZeroes(int** matrix, int matrixSize, int* matrixColSize){ int* rhash = (int*)calloc(matrixSize, sizeof(int)); int* chash = (int*)calloc(*matrixColSize, sizeof(int)); int i, j, k; for (i = 0; i < matrixSize; i++){ for (j = 0; j < *matrixColSize; j++) { if (matrix[i][j] == 0){ rhash[i] = 1; chash[j] = 1; } } } for (i = 0; i < matrixSize; i++){ if (rhash[i]==1) memset(matrix[i], 0, (*matrixColSize)*sizeof(int)); } for (i = 0; i < *matrixColSize; i++){ if (chash[i] == 1){ for (k = 0; k < matrixSize; k++) matrix[k][i] = 0; } } }
void setZeroes(int** matrix, int matrixSize, int* matrixColSize){ int* rhash = (int*)calloc(matrixSize, sizeof(int)); int* chash = (int*)calloc(*matrixColSize, sizeof(int)); int i, j, k; for (i = 0; i < matrixSize; i++){ for (j = 0; j < *matrixColSize; j++) { if (matrix[i][j] == 0){ rhash[i] = 1; chash[j] = 1; } } } for (i = 0; i < matrixSize; i++){ if (rhash[i]==1) memset(matrix[i], 0, (*matrixColSize)*sizeof(int)); } for (i = 0; i < *matrixColSize; i++){ if (chash[i] == 1){ for (k = 0; k < matrixSize; k++) matrix[k][i] = 0; } } }