欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

顺时针方向打印矩阵解决思路

程序员文章站 2022-05-02 10:55:15
...
顺时针方向打印矩阵
http://blog.csdn.net/wusuopubupt/article/details/12788249
在这里看到的。
/**
* @author:wusuopubupt
* @date:2013-10-16
* @from:http://ac.jobdu.com/problem.php?pid=1391
*
* Print matrix in clockwise
* */
$matrix = array
(
array(1,2,3,4),
array(5,6,7,8),
array(9,10,11,12),
array(13,14,15,16),
array(17,18,19,20)
);

print_matrix($matrix);

function print_matrix($arr) {
$top = 0;
$left = 0;
$right = count($arr[0])-1;
$bottom = count($arr)-1;

while ($left != $right && $top != $bottom) {
//top
for($j = $left; $j echo $arr[$top][$j]." ";
}
$top++;

//right
for($i = $top; $i echo $arr[$i][$right]." ";
}
$right--;

//bottom
for($j = $right; $j >= $left; $j--) {
echo $arr[$bottom][$j]." ";
}
$bottom--;

//left
for($i = $bottom; $i >= $top; $i--) {
echo $arr[$i][$left]." ";
}
$left++;
}
}

为啥输出结果是这样的呢?1 2 3 4 8 12 16 20 19 18 17 13 9 5 6 7 11 15 14 10

网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 顺时针方向打印矩阵解决思路
  • 专题推荐

    作者信息
    顺时针方向打印矩阵解决思路

    认证0级讲师

    推荐视频教程
  • 顺时针方向打印矩阵解决思路javascript初级视频教程
  • 顺时针方向打印矩阵解决思路jquery 基础视频教程
  • 视频教程分类