Halihallo Lude
gegeben ist eine Zeichenkette der Laenge 'n'. Aus dieser entfernt werden soll jedes zweite Zeichen, beginnend mit dem ersten. - Wie geht's am performatesten?
Hm. Da Perl per se aufgrund der Architektur (4GL Language mit VM)
langsamer ist, als äquivalente C-Programme, könnte ich mir
vorstellen, dass ein möglichst C Backend am schnellsten ist. Die
per standard mitgelieferte Möglichkeit bietet hierbei die
RegularExpression Engine:
my $t = '.....'; # langer String
$t =~ s/(.)(.)/$1/g;
print $t;
oder
my $t = '.....';
print join('', split(/(.)./,$t));
ansonsten könnte ich mir noch etwas per grep/map vorstellen, was
aber IMHO langsamer sein wird. Das IMHO langsamste wäre eine
for/while-Schleife mit einem Modulo-Test auf die Schleifenvariable,
oder allgemein: die Verwendung von substr().
Viele Grüsse
Philipp