Skip to content

Commit 294ca5b

Browse files
Merge pull request youngyangyang04#1011 from xiaofei-2020/ts3
添加(0059.螺旋矩阵II.md):增加typescript版本
2 parents 1e68f64 + 552388e commit 294ca5b

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

problems/0059.螺旋矩阵II.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -287,6 +287,51 @@ var generateMatrix = function(n) {
287287

288288
```
289289

290+
TypeScript:
291+
292+
```typescript
293+
function generateMatrix(n: number): number[][] {
294+
let loopNum: number = Math.floor(n / 2);
295+
const resArr: number[][] = new Array(n).fill(1).map(i => new Array(n));
296+
let chunkNum: number = n - 1;
297+
let startX: number = 0;
298+
let startY: number = 0;
299+
let value: number = 1;
300+
let x: number, y: number;
301+
while (loopNum--) {
302+
x = startX;
303+
y = startY;
304+
while (x < startX + chunkNum) {
305+
resArr[y][x] = value;
306+
x++;
307+
value++;
308+
}
309+
while (y < startY + chunkNum) {
310+
resArr[y][x] = value;
311+
y++;
312+
value++;
313+
}
314+
while (x > startX) {
315+
resArr[y][x] = value;
316+
x--;
317+
value++;
318+
}
319+
while (y > startY) {
320+
resArr[y][x] = value;
321+
y--;
322+
value++;
323+
}
324+
startX++;
325+
startY++;
326+
chunkNum -= 2;
327+
}
328+
if (n % 2 === 1) {
329+
resArr[startX][startY] = value;
330+
}
331+
return resArr;
332+
};
333+
```
334+
290335
Go:
291336

292337
```go

0 commit comments

Comments
 (0)