LC.P1072[按列翻转得到最大值等行数] 方法一:哈希表123456789101112131415class Solution { public int maxEqualRowsAfterFlips(int[][] matrix) { int ans = 0, n = matrix[0].length; Map<String, Integer> map = new HashMap<>(); for (int[] row : matrix) { char[] s = new char[n]; for (int i = 0; i < n; ++i) { // 将以1开头的行翻转 s[i] = (char) (row[0] ^ row[i]); } ans = Math.max(ans, map.merge(String.valueOf(s), 1, Integer::sum)); } return ans; }} 时间复杂度:$O(mn)$,其中$m$为矩阵的行数,$n$为矩阵的列数 空间复杂度:$O(m)$,