in reply to Re: Merge 2 strings like a zip
in thread Merge 2 strings like a zip
Hm.
#! perl -slw use strict; use Benchmark qw[ cmpthese ]; use List::MoreUtils qw[ zip ]; sub zipA { my( $str1, $str2 ) = @_; $str1 =~ s/.\K/ substr $str2, 0, 1, ''/gesr; } sub zipB { no warnings qw/ uninitialized /; my( $a, $b ) = @_; my @a1 = split( '', $a ); my @a2 = split( '', $b ); return join'', zip @a1, @a2; } sub zipC($$){ my( $n, $a, $b ) = ( 1, @_ ); substr( $a, $n, 0, $_), $n += 2 for split '', $b; return $a; };; our $A = 'ABCDEFGHIJ'; our $B = 'abcde'; cmpthese -1, { A => q[ my $zipped = zipA( $A, $B ); ], B => q[ my $zipped = zipB( $A, $B ); ], C => q[ my $zipped = zipC( $A, $B ); ], }; __END__ C:\test>\perl5.18\perl\bin\perl.exe 1133857.pl Rate B A C B 43932/s -- -48% -72% A 84167/s 92% -- -47% C 159444/s 263% 89% --
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Merge 2 strings like a zip
by SimonPratt (Friar) on Jul 09, 2015 at 10:43 UTC | |
|
Re^3: Merge 2 strings like a zip
by 1nickt (Canon) on Jul 09, 2015 at 04:03 UTC | |
by roboticus (Chancellor) on Jul 09, 2015 at 10:07 UTC | |
by 1nickt (Canon) on Jul 09, 2015 at 11:58 UTC |