重複の可能性:
らせん状にループする らせん状
に文字列を書く らせん状に
2 次元配列を出力する らせん状に配列
する
行列の形のデータがあります
0 0 0 0 0
0 1 2 3 0
0 4 5 6 0
0 7 8 9 0
0 0 0 0 0
この方法で1次元配列に格納されます
[0 0 0 0 0 0 1 2 3 0 0 4 5 6 0 0 7 8 9 0 0 0 0 0 0]
これは、5x5 に変換されたゼロ パディングされた 3x3 配列です。開始インデックスと終了インデックスはわかっています。
ご覧のとおり、25 の操作を実行してすべての値を出力できますが、代わりにらせん状の順序で実行する場合は、理想的には 9 回の操作でこれを行う必要があります。
誰もこれを行う方法を知っていますか?
行数と列数はわかっています。ここでは、rows=5 cols=5 になります。
したがって、開始インデックスは行 + 1 になり、終了インデックスは行 * 列 -6 になります。
スパイラルオーダートラバーサルとして視覚化しています。