classSolution{ funcmatrixReshape(_mat: [[Int]], _r: Int, _c: Int) -> [[Int]] { let m = mat.count, n = mat[0].count if m*n != r*c { return mat } var res : [[Int]] = [] var current : [Int] = [] for i in0..< m { for j in0..< n { current.append(mat[i][j]) if current.count == c { res.append(current) current = [] } } } return res } }
classSolution{ funcmatrixReshape(_mat: [[Int]], _r: Int, _c: Int) -> [[Int]] { var res = [[Int]].init(repeating: [], count: r) let m = mat.count, n = mat[0].count if m*n != r*c { return mat } var warehouse = [Int]() for i in0..< m { for j in0..< n { warehouse.append(mat[i][j]) } } var index =0; for i in0..< r { for j in0..< c { res[i].append(warehouse[index]) index +=1 } } return res } }