[Vienna-pm] 0 setzen eine arrays

Michael Kröll michael.kroell at uibk.ac.at
Wed Dec 14 04:43:10 PST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Johannes Fuernkranz wrote:
|>Ich  erpare mir so a) kopieren b)loop mit einzel null setzen ..
|>   leider ergibt das noch einfachere einen Fehler:
|>	@err = map { 0 } @avg;
|
| Ich haette einfach
|
| @err = (0) x @avg;
|
| gemacht. Spricht da was dagegen?

Nachdem das auch noch um einiges schneller zu sein scheint, denke ich nicht.

- --michael

use Benchmark qw(:all);

my @avg = qw( 1 2 3 4 5 );
my @err = ();
my $r = timethese( -5, {
~        a => sub{ @err = map { 0 } @avg; },
~        b => sub{ @err = (0) x @avg; },
~    } );

Benchmark: running a, b for at least 5 CPU seconds...
~         a:  5 wallclock secs ( 4.85 usr +  0.56 sys =  5.41 CPU) @
218227.54/s (n=1180611)
~         b:  3 wallclock secs ( 4.17 usr +  0.93 sys =  5.10 CPU) @
551290.98/s (n=2811584)


- --
063A F25E B064 A98F A479  1690 78CD D023 5E2A 6688
http://zis.uibk.ac.at/.m/uibk.ac.at_pgp_pubkey.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (MingW32)

iD8DBQFDoBNeeM3QI14qZogRAtfNAJ4mNUkB3vOEC0ml2mFD2TnQ4D1cYgCghlu9
qJG1AxKYpzaVp5F1XTqsrnI=
=Gb5f
-----END PGP SIGNATURE-----


More information about the Vienna-pm mailing list