PHP 演算法 順時針列印矩陣的PHP實現

2022-01-30 18:59:58 字數 748 閱讀 5850

1.行數和列數取出來row,col,圈數就是 (較小值-1)/2+1

2.外層迴圈控制圈數,內層四個for迴圈,i

3.第乙個for迴圈,從左到右,j=i;j; arr[i][j]

4.第二個for迴圈,從上到下,k=i+1;ki]

5.第三個迴圈,從右到左,m=col-2-i;m>=i&&row-1-i!=i;m-- arr[row-1-i][m]//

row-1-i!=i單行的時候只列印一次

6.第四個迴圈,從下到上,n=row-2-i;n>=i&&col-1-i!=i;n-- arr[n][i]

<?php

$arr=array

();$flag=0;

for($i=0;$i

<2;$i++)

}var_dump($arr

);//

順時針列印矩陣

function printmatrix($arr

)

//從上到下

for($k=$i+1;$k

<$row-$i;$k++)

//從右到左

for($m=$col-$i-2;$m>=$i;$m--)

//從下到上

for($n=$row-$i-2;$n>$i;$n--)

}

return

$res;}

$res=printmatrix($arr);

順時針列印矩陣

輸入乙個矩陣,按照從外向裡以順時針的順序依次列印出每乙個數字。例如 如果輸入如下矩陣 1 2 3 45 6 7 89 10 11 1213 14 15 16則依次列印出數字 1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10。這個題目 寫的並不好感覺,好多if看著就煩,就是...

順時針列印矩陣

題目 給定乙個矩陣,從外向內順時針列印矩陣中的每乙個數字。例如 給定矩陣 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 輸出應該為 分析 這道題的意思非常直觀,給人的感覺也是so easy,然而實際去做的時候會發現,如果結構劃分的不好,會出現很多的迴圈,而且包括對各種...

順時針列印矩陣

from 題目 輸入乙個矩陣,按照從外向裡以順時針的順序依次列印出每乙個數字。例如 如果輸入如下矩陣 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。網上聽說聽到包括autod...