perl模板的应用:随机排序:随机不放回取样

  • Post author:
  • Post category:其他


有时候我们可能需要随机的将一些的数字或者其他的元素进行随机的抽取,或者随机的排序,这里他们的本质是一样的。或者随机的排序我们也可以看作是不放回的随机取样。

因为我们随机排序的每一个元素的顺序都是随机的。相当于每一个元素都是模拟的随机抽取。大家可能在科研的过程中用到。这里从百度知道里可以搜索到答案,这里稍作整理,以便后来的应用。

程序内容如下,大家根据需要自己修改,用到的是perl的List::Util模块。

use strict;
use warnings;
use List::Util qw/shuffle/;

my @newList;
my @a;

my @list = qw/a b c d e f/;#这里我们可以把这个数组当作一个箱子,里面放着不同的元素。
@newList = shuffle @list;  #进行处理得到一个随机排序的新的数组

print "@newList\n";

@a=shuffle @list;         #再次处理,又得到一个不同的随机排序的新数组
print "@a\n";

结果如下:

C:\WINDOWS\system32\cmd.exe /c perl "C:\Document
面\d.pl"
b f e a c d
c a b f e d
Hit any key to close this window...




版权声明:本文为gaorongchao1990626原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。