885。スパイラルマトリックスⅢ
中
トピック: 配列、行列、シミュレーション
東向きの行 x 列グリッドのセル (rStart、cStart) から開始します。北西の角はグリッドの最初の行と列にあり、南東の角は最後の行と列にあります。
時計回りの螺旋状に歩き、このグリッド内のすべての位置を訪問します。グリッドの境界の外に移動するたびに、グリッドの外を歩き続けます (ただし、後でグリッドの境界に戻る可能性があります)。最終的には、グリッドのすべての行 * 列スペースに到達します。
訪問した順序でグリッドの位置を表す座標の配列を返します。
例 1:
例 2:
制約:
解決策:
この問題を解決するには、次の手順に従います:
このソリューションを PHP で実装してみましょう: 885。スパイラルマトリックスⅢ
<?php // Example Usage: print_r(spiralMatrixIII(1, 4, 0, 0)); // [[0,0],[0,1],[0,2],[0,3]] print_r(spiralMatrixIII(5, 6, 1, 4)); // [[1,4],[1,5],[2,5],[2,4], ...] ?>
このアプローチにより、グリッド内のすべてのセルを必要なスパイラル順序で確実に訪問できるようになります。
連絡先リンク
このシリーズが役立つと思われた場合は、GitHub で リポジトリ
にスターを付けるか、お気に入りのソーシャル ネットワークで投稿を共有することを検討してください。あなたのサポートは私にとって大きな意味を持ちます!このような役立つコンテンツがさらに必要な場合は、お気軽にフォローしてください:
以上が。スパイラルマトリックスIIIの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。