all tasks
This commit is contained in:
parent
b83f433714
commit
68f8f3e56b
14735 changed files with 178959 additions and 0 deletions
21
Task/Spiral-matrix/JavaScript/spiral-matrix.js
Normal file
21
Task/Spiral-matrix/JavaScript/spiral-matrix.js
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
spiralArray = function (edge) {
|
||||
var arr = Array(edge),
|
||||
x = 0, y = edge,
|
||||
total = edge * edge--,
|
||||
dx = 1, dy = 0,
|
||||
i = 0, j = 0;
|
||||
while (y) arr[--y] = [];
|
||||
while (i < total) {
|
||||
arr[y][x] = i++;
|
||||
x += dx; y += dy;
|
||||
if (++j == edge) {
|
||||
if (dy < 0) {x++; y++; edge -= 2}
|
||||
j = dx; dx = -dy; dy = j; j = 0;
|
||||
}
|
||||
}
|
||||
return arr;
|
||||
}
|
||||
|
||||
// T E S T:
|
||||
arr = spiralArray(edge = 5);
|
||||
for (y= 0; y < edge; y++) console.log(arr[y].join(" "));
|
||||
Loading…
Add table
Add a link
Reference in a new issue