本文實例講述了PHP實現順時針打印矩陣的方法。分享給大家供大家參考,具體如下:
問題
輸入一個矩陣,按照從外向里以順時針的順序依次打印出每一個數字,例如,如果輸入如下矩陣:
1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 |
則依次打印出數字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.
解決方法
就是一圈一圈地打印,只要控制好循環就可以。
注意單行單列的情況。
實現代碼
<?php function printMatrix($matrix) { $row = count($matrix); $col = count($matrix[0]); if($row == 0 || $col == 0) return $matrix; $result = array(); $left = 0;$right = $col-1; $top = 0;$bottom = $row-1; while($left<=$right && $top<= $bottom){ for($i =$left;$i<=$right;++$i){ array_push($result, $matrix[$top][$i]); } for($i =$top+1;$i<=$bottom;++$i) array_push($result, $matrix[$i][$right]); if($top!=$bottom){ for($i = $right-1;$i>=$left;--$i) array_push($result, $matrix[$bottom][$i]); } if($left!=$right){ for($i = $bottom-1;$i>$top;--$i) array_push($result, $matrix[$i][$left]); } $left++;$right--;$top++;$bottom--; } return $result; }
更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP數學運算技巧總結》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》、《PHP數組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結》、《PHP數據結構與算法教程》、《php程序設計算法總結》、《php正則表達式用法總結》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
您可能感興趣的文章:
- PHP簡單實現二維數組的矩陣轉置操作示例
- PHP實現圖的鄰接矩陣表示及幾種簡單遍歷算法分析
- PHP使用數組實現矩陣數學運算的方法示例
- PHP實現蛇形矩陣,回環矩陣及數字螺旋矩陣的方法分析
- PHP 數組和字符串互相轉換實現方法
- PHP中數組合并的兩種方法及區別介紹
- PHP遍歷數組的方法匯總
- PHP遍歷數組的幾種方法
- php數組函數序列之array_keys() - 獲取數組鍵名
- php獲取數組中重復數據的兩種方法
【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。