+ -
当前位置:首页 → 问答吧 → 原来递归排列如此省代码

原来递归排列如此省代码

时间:2010-12-25

来源:互联网

&test(0,1,2,3,4);  #第一个参数代表层数0,其他都是排列元素
<STDIN>;

sub test {
        my @arr=@_;
        shift @arr;
        my @tmparr=@arr;
        if ($_[0]>$#arr) {print  "@arr\n";return;}
        foreach ($_[0]..$#arr) {
                $tmparr[$_]=$tmparr[$_[0]];
                $tmparr[$_[0]]=$arr[$_];
                &test($_[0]+1,@tmparr);
        }
}


下载 (41.88 KB)
2010-12-25 09:06

作者: paktc   发布时间: 2010-12-25

perl的各种好用啊
shift ,
$#arr
都是直接的。

作者: paktc   发布时间: 2010-12-25



QUOTE:
perl的各种好用啊
shift ,
$#arr
都是直接的。
paktc 发表于 2010-12-25 09:08




    同时也被很多人诟病。

作者: 兰花仙子   发布时间: 2010-12-25