Thread schwarz'scher filter?: entferne dups aus array (18 answers)
Opened by lichtkind at 2005-03-07 22:01

lichtkind
 2005-03-09 03:37
#52403 #52403
User since
2004-03-22
5709 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use warnings;
use strict;

my @array = (23,1,2,3,4,2,3,5,8);
my $cc;
my @uniq = map { $_->[0] }
          sort { $a->[1] <=> $b->[1]}
          grep {! $_->[2]}
          sort { my $v = $a->[0] cmp $b->[0];
               
  $a->[2] = 1 unless $v or $b->[2];
               
  $v}
           map {[$_,$cc++]} @array;

print "$_," for @uniq;

das isser, optimierungsbedürftig aber er tut funzen

kann man in diesem fall auch aus was ähnliches wie $. nur halt in dem map zurückgreifen?

ein einfacher benchmark zeigte auf meinem mittel altem system (1300Duron mit viel ram) das bei einer arraylänge von 30 und 20 wiederholungen inclusive service routinen zur bereitstellung des inhalts des array aus internen quellen es erst in den messbaren bereich kommt(0.01 sec). klingt nach schnell genug™\n\n

<!--EDIT|lichtkind|1110333305-->
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.

View full thread schwarz'scher filter?: entferne dups aus array