[Python] Algoritmo in CSV
Pietro Battiston
me a pietrobattiston.it
Sab 4 Set 2010 11:00:52 CEST
Il giorno sab, 04/09/2010 alle 10.09 +0200, enrico franchi ha scritto:
> 2010/9/3 Pietro Battiston <me a pietrobattiston.it>:
>
> >> Potrebbe essere. La teoria dice che hai ragione tu; in pratica quello
> >> che succede non lo so
> >
> > Cioè sospetti che _in pratica_ un sort possa prendere meno tempo di un
> > max?
>
> Non lo *sospetto*. Ma *dipende*. Il sort di cui parliamo e' il
> timsort, che e' *molto*
> efficiente. Il fatto e' che max e' a sua volta scritto in C, il che
> vuole dire che non
> si pagano le solite penalita'.
Mi interessava l'argomento perché se davvero il max fosse stato più
lento del sort, da oggi in poi tutti i miei programmi sarebbero iniziati
con
max = ( lambda i : i.sort() or i[-1])
!
>
> In pratica ho anche confrontato un max fatto *male* in Python. E'
> circa una volta
> e mezzo piu' lento del max builtin e svariate volte piu' veloce dei sort.
>
> La teoria, insomma, vince. Il mio discorso era un pelino piu'
> generale. Ovvero che dal momento che la teoria nasconde sempre le
> costanti moltiplicative, ma nella pratica queste possono avere un
> impatto non indifferente, spesso un controllo non guasta.
(forse in questo caso ci sarebbe più da temere costanti _additive_...)
ciao
Pietro
Maggiori informazioni sulla lista
Python