码迷,mamicode.com
首页 > 其他好文 > 详细

顺时针打印矩阵

时间:2014-05-10 08:10:37      阅读:285      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   code   java   tar   

bubuko.com,布布扣
<?php
header("Content-Type:text/html;charset=utf-8");
// 顺时针打印矩阵

// 随机生成数组,a[i,j];
$col = rand ( 0, 10 );
$row = rand ( 0, 10 );

$arr = array ();
for($i = 0; $i < $col; $i ++)
    for($j = 0; $j < $row; $j ++)
        $arr [$i] [] = rand ( 0, 100 );


//输出矩形数组
function getEE($arr) {
    $col = count ( $arr );
    $row = count ( $arr [0] );
    $i=0;
    $j=0;
    for($j=0;$j<$col;$j++){
    for($i=0;$i<$row;$i++){
        echo $arr[$j][$i]."  ";
    }
    echo "<br/>";
    }
}

/*
 * 分析: 由一周为一个轮回。 如果刚好有偶数个周,数组高大于宽,则有$col/2次轮回,若宽大于高则 有$row/2个轮回。 如果未奇数个周,则有$len/2+1个周。
 */
function Printarrayincircle($arr) {
    $col = count ( $arr );
    $row = count ( $arr [0] );
    $len = $col < $row ? $col : $row;
    for($i =0; $i < $len / 2; $i ++) {
        $x=$i+1;
        echo ‘第‘.$x."圈:</br>";
        Printnumberincircle ( $arr, $i );
        
    }
}

/*
 * 一周共有四次判断 Printnumberincircle($start,$end,$direction); 第一次: 第二次: 第三次: 第四次:
 */
function Printnumberincircle($arr, $p) {
    $col = count ( $arr );
    $row = count ( $arr [0] );
    $len = $col < $row ? $col : $row;
    // 第一次:start:$row-$i+1;end:$col-1;
    for($i = 0; $i < $row - 2 * $p; $i ++)
        echo $arr [ $p ] [$p + $i] . " -";
    echo "<br/>";
    
    for($i = 0; $i < $col - 2 * $p - 1; $i ++)
        echo $arr [$p + $i + 1] [$row - $p - 1]. " -";
    echo "<br/>";
    
    if($p==floor($len/2)  )
        break;
    for($i = 0; $i < $row - 2 * $p - 1; $i ++)
        echo $arr [$col - $p - 1] [$row - $i - $p -2]. " -";
    echo "<br/>";
    for($i = 0; $i < $col - 2 * $p - 2; $i ++)
        echo $arr [$col - $i - $p-2] [$p]. " -";
    echo "<br/>";
}

getEE($arr);
echo "<br/>";


Printarrayincircle ( $arr );
?>
bubuko.com,布布扣

代码很难看,不知道为什么,希望高人指点一二。

顺时针打印矩阵,布布扣,bubuko.com

顺时针打印矩阵

标签:style   blog   class   code   java   tar   

原文地址:http://www.cnblogs.com/canbefree/p/3719181.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!