php实现顺时针打印矩阵的代码实例

php实现顺时针打印矩阵的代码实例

内容导读

收集整理的这篇技术教程文章主要介绍了php实现顺时针打印矩阵的代码实例,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1337字,纯文字阅读大概需要2分钟

内容图文

本篇文章给大家带来的内容是关于php实现顺时针打印矩阵的代码实例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

1、行数和列数取出来row,col,圈数就是 (较小值-1)/2+1

2、外层循环控制圈数,内层四个for循环,i

3、第一个for循环,从左到右,j=i;j<col-i;j++;j<; arr[i][j]

4、第二个for循环,从上到下,k=i+1;k<row-i;k++; arr[k][col-1-i]

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++){



$flag=$i*2;



for($j=0;$j<2;$j++){







$flag++;







$arr[$i][]=$flag;



}
 }var_dump($arr);//顺时针打印矩阵function printMatrix($arr){



$res=array();



$row=count($arr);



$col=count($arr[0]);



$circle=intval((($row>$col ? $col : $row)-1)/2+1);



for($i=0;$i<$circle;$i++){







//转圈开始







//从左到右







for($j=$i;$j<=$col-1;$j++){











$t=$arr[$i][$j];











if(in_array($t,$res)) continue;











$res[]=$t;







}








 //从上到下







for($k=$i+1;$k<$row-$i;$k++){











$t=$arr[$k][$col-$i-1];













if(in_array($t,$res)) continue;











$res[]=$t;







}








 //从右到左







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











$t=$arr[$row-$i-1][$m];











if(in_array($t,$res)) continue;











$res[]=$t;







}








 //从下到上







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











$t=$arr[$n][$i];











if(in_array($t,$res)) continue;











$res[]=$t;







}




 }




 return $res;}$res=printMatrix($arr);

以上就是php实现顺时针打印矩阵的代码实例的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的php实现顺时针打印矩阵的代码实例全部内容,希望文章能够帮你解决php实现顺时针打印矩阵的代码实例所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com