• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

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

php 搞代码 3年前 (2022-01-24) 17次浏览 已收录 0个评论

顺时针方向打印矩阵
http://blog.gaodaima.6来源gaodaimacom搞#^代%!码网搞gaodaima代码com/wusuopubupt/article/details/12788249
在这里看到的。

<?php<br />/**<br /> * @author:wusuopubupt<br /> * @date:2013-10-16<br /> * @from:http://ac.jobdu.com/problem.php?pid=1391<br /> * <br /> * Print matrix in clockwise<br /> * */<br />$matrix = array<br />(<br />	array(1,2,3,4),<br />	array(5,6,7,8),<br />	array(9,10,11,12),<br />	array(13,14,15,16),<br />	array(17,18,19,20)<br />);<br /><br />print_matrix($matrix);<br /><br />function print_matrix($arr) {<br />	$top = 0;<br />	$left = 0;<br />	$right = count($arr[0])-1;<br />	$bottom  = count($arr)-1;<br />	<br />	while ($left != $right && $top != $bottom) {<br />		//top<br />		for($j = $left; $j <= $right; $j++) {<br />			echo $arr[$top][$j]." ";<br />		}<br />		$top++;<br />		<br />		//right<br />		for($i = $top; $i <= $bottom; $i++) {<br />			echo $arr[$i][$right]." ";<br />		}<br />		$right--;<br />		<br />		//bottom<br />		for($j = $right; $j >= $left; $j--) {<br />			echo $arr[$bottom][$j]." ";<br />		}<br />		$bottom--;<br />		<br />		//left<br />		for($i = $bottom; $i >= $top; $i--) {<br />			echo $arr[$i][$left]." ";<br />		}<br />		$left++;<br />	}<br />}

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

发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址