これまで、らせんを使用して行列の要素を 1 つずつ読み取りたい場合、MxM 行列を使用して外側から開始し、ゆっくりと中心に移動することを常に意味していることを確認しました。逆に、行列内のランダムな点から開始し、「スパイラル」パスを使用してすべての要素を読み取るにはどうすればよいでしょうか。
Matlabを使用してテストを行っています。
例。
mat=
1 2 3
4 5 6
7 8 9
時計回りにスパイラルする mat(3,1) から開始するとすると、次のようになります。
vec=
7, 8, 4, 5, 6, 9, 1, 2, 3
そして、mat(2,2) から開始した場合、
vec=
5, 6, 9, 8, 7, 4, 1, 2, 3