[pyar] [JUEGO] Búsqueda de strings

fisa fisadev en gmail.com
Vie Mayo 2 15:11:18 ART 2014


On May 2, 2014 12:13 PM, "Alejandro Santos" <listas en alejolp.com> wrote:
>
> 2014-05-02 16:52 GMT+02:00 Natalia Bidart <nataliabidart en gmail.com>:
> >
> > R = [i for i in L if S in i]
> >
> > Si querés búsqueda case insensitive:
> >
> > R = [i for i in L if S.lower() in i.lower()]
> >
>
> Muy bien!
>
> - Cual es la complejidad de esta solución?
> - Se puede mejorar? Cómo, en qué condiciones?
>

Hay una primer cosa obvia en el ejemplo para case insensitive:
S se convierte a minúsculas len(L) veces, siendo que podría convertirse
previamente 1 sola vez y luego solo usarse.

Para ambos, igual, la complejidad temporal está en el orden de O(n), crece
linealmente.
Así que ni me preocuparía por hacerlo complicado para ganar velocidad antes
de correrlo o medirlo con datos de verdad. Algo lineal no justifica la
optimización prematura.

Primero que sea legible, y después, si no es lo suficientemente rápido, ahí
optimizo :)

--
fisa - Juan Pedro Fisanotti - desde el celular
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140502/1d2f7ab8/attachment.html>


More information about the pyar mailing list