given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order.
for example,
given the following matrix:
[
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]
you should return [1,2,3,6,9,8,7,4,5].
題目要求我們順時針列印陣列。
注意兩個部分,第乙個控制列印繼續的外層迴圈條件。
第二個 ,注意四個方向列印所需的條件。
詳細的分析參考,講的很好。
class solution
//從右往左列印一行
if(startfor(int i=endx-1;i>=start;i--)
res.add(matrix[endy][i]);
}//從下往上列印一列
if(start1)
start++;
} return res;
}}
java演算法系列
棧的概念 棧是一種特殊的線性表,堆疊的資料元素以及資料元素之間的關係和線性表是完全一樣的。差別是線性表是在任意位置進行插入和刪除操作,棧是只允許在固定的一端進行插入和刪除,棧的插入和刪除只允許在棧頂,棧的插入和刪除通常稱為進棧和出棧。資料集合 每個資料元素的資料型別可以是任意的型別 操作的集合 進棧...
演算法系列 Move Zeroes
given an array nums,write a function to move all 0 s to the end of it while maintaining the relative order of the non zero elements.for example,given ...
演算法系列 Missing Number
given an array containing n distinct numbers taken from 0,1,2,n,find the one that is missing from the array.for example,given nums 0,1,3 return 2.note...