mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 03:34:02 +08:00
Merge pull request #1011 from xiaofei-2020/ts3
添加(0059.螺旋矩阵II.md):增加typescript版本
This commit is contained in:
@ -287,6 +287,51 @@ var generateMatrix = function(n) {
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
TypeScript:
|
||||||
|
|
||||||
|
```typescript
|
||||||
|
function generateMatrix(n: number): number[][] {
|
||||||
|
let loopNum: number = Math.floor(n / 2);
|
||||||
|
const resArr: number[][] = new Array(n).fill(1).map(i => new Array(n));
|
||||||
|
let chunkNum: number = n - 1;
|
||||||
|
let startX: number = 0;
|
||||||
|
let startY: number = 0;
|
||||||
|
let value: number = 1;
|
||||||
|
let x: number, y: number;
|
||||||
|
while (loopNum--) {
|
||||||
|
x = startX;
|
||||||
|
y = startY;
|
||||||
|
while (x < startX + chunkNum) {
|
||||||
|
resArr[y][x] = value;
|
||||||
|
x++;
|
||||||
|
value++;
|
||||||
|
}
|
||||||
|
while (y < startY + chunkNum) {
|
||||||
|
resArr[y][x] = value;
|
||||||
|
y++;
|
||||||
|
value++;
|
||||||
|
}
|
||||||
|
while (x > startX) {
|
||||||
|
resArr[y][x] = value;
|
||||||
|
x--;
|
||||||
|
value++;
|
||||||
|
}
|
||||||
|
while (y > startY) {
|
||||||
|
resArr[y][x] = value;
|
||||||
|
y--;
|
||||||
|
value++;
|
||||||
|
}
|
||||||
|
startX++;
|
||||||
|
startY++;
|
||||||
|
chunkNum -= 2;
|
||||||
|
}
|
||||||
|
if (n % 2 === 1) {
|
||||||
|
resArr[startX][startY] = value;
|
||||||
|
}
|
||||||
|
return resArr;
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
Go:
|
Go:
|
||||||
|
|
||||||
```go
|
```go
|
||||||
|
Reference in New Issue
Block a user