Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit ea296d6

Browse files
feat: add typescript solution to lc problem: No.0566.Reshape the Matrix (doocs#504)
1 parent 9ff9d56 commit ea296d6

File tree

3 files changed

+49
-0
lines changed

3 files changed

+49
-0
lines changed

‎solution/0500-0599/0566.Reshape the Matrix/README.md‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,24 @@ class Solution {
9191
}
9292
```
9393

94+
### **TypeScript**
95+
96+
```ts
97+
function matrixReshape(mat: number[][], r: number, c: number): number[][] {
98+
let m = mat.length, n = mat[0].length;
99+
if (m * n != r * c) return mat;
100+
let ans = Array.from({length: r}, v => new Array(c).fill(0));
101+
let k = 0;
102+
for (let i = 0; i < m; ++i) {
103+
for (let j = 0; j < n; ++j) {
104+
ans[Math.floor(k / c)][k % c] = mat[i][j];
105+
++k;
106+
}
107+
}
108+
return ans;
109+
};
110+
```
111+
94112
### **...**
95113

96114
```

‎solution/0500-0599/0566.Reshape the Matrix/README_EN.md‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,24 @@ class Solution {
130130
}
131131
```
132132

133+
### **TypeScrpt**
134+
135+
```ts
136+
function matrixReshape(mat: number[][], r: number, c: number): number[][] {
137+
let m = mat.length, n = mat[0].length;
138+
if (m * n != r * c) return mat;
139+
let ans = Array.from({length: r}, v => new Array(c).fill(0));
140+
let k = 0;
141+
for (let i = 0; i < m; ++i) {
142+
for (let j = 0; j < n; ++j) {
143+
ans[Math.floor(k / c)][k % c] = mat[i][j];
144+
++k;
145+
}
146+
}
147+
return ans;
148+
};
149+
```
150+
133151
### **...**
134152

135153
```
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
function matrixReshape(mat: number[][], r: number, c: number): number[][] {
2+
let m = mat.length, n = mat[0].length;
3+
if (m * n != r * c) return mat;
4+
let ans = Array.from({length: r}, v => new Array(c).fill(0));
5+
let k = 0;
6+
for (let i = 0; i < m; ++i) {
7+
for (let j = 0; j < n; ++j) {
8+
ans[Math.floor(k / c)][k % c] = mat[i][j];
9+
++k;
10+
}
11+
}
12+
return ans;
13+
};

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /