Leecode:Spiral Matrix(JS解答)
function spiralOrder(matrix: number[][]): number[] {
var resArr:number[] = [];
if(matrix.length < 1 ) return resArr;
var top:number = 0;
var left:number = 0;
var bottom:number = matrix.length-1;
var right:number = matrix[0].length-1;
var totalNum:number = matrix.length * matrix[0].length;
while (totalNum > 0){
for(var i = left; i <= right && top<=bottom; i++){
resArr.push(matrix[top][i]);
totalNum--;
}
top++;
for(var i = top; i <= bottom && left<=right; i++){
resArr.push(matrix[i][right]);
totalNum--;
}
right--;
for(var i = right; i >= left && top<=bottom; i--){
resArr.push(matrix[bottom][i]);
totalNum--;
}
bottom--;
for(var i = bottom; i >= top && left<=right; i--){
resArr.push(matrix[i][left]);
totalNum--;
}
left++;
}
return resArr;
};