[Python] richiesta di informazioni.

enrico franchi enrico.franchi a gmail.com
Mer 11 Lug 2012 00:27:37 CEST


2012/7/10 Davide Rambaldi <davide.rambaldi a gmail.com>
>
> Ok mi sembra di aver capito….
>
>
> Sembra anche decisamente piu veloce delle funzioni ricorsive con return….
>
> cfr: https://gist.github.com/3082523
>
>

Guarda, non e' come dici. Misuri le cose sbagliate.

1. le funzioni ricorsive sono un cattivo  modo di scrivere python (e
hanno anche questioni di perfo.rmance)
2 , i due codici sono molto diversi:: quello con yield e' un for
secco, e' naturalmente efficiente, quello ricorsivo e' una
implementazione ricorsiva *atroce*. talmente atroce che ti cambia il
tempo algoritmico (che e' esponenziale).

In generale yield non e' un fulmine di guerra... e' solo che permette
di scrivere codice facilmente.

Tornando al tuo esempio, la versione con yield ti e' venuta cosi',
naturale, ed e' assolutamente buona.
La versione "competitiva" ricorsiva (al di la di problemi semantici
strutturali di python) lo e' un po' meno.



--
.
..: -enrico-


Maggiori informazioni sulla lista Python