[Python-es] Buscar índices de un array (que cumple condición) de forma eficiente

Olemis Lang (Simelix) olemis+py en gmail.com
Jue Mar 4 17:55:38 CET 2010


2010/3/4 Olemis Lang (Simelix) <olemis+py en gmail.com>:
> 2010/3/4 Pablo Angulo <pablo.angulo en uam.es>:
>> Olemis Lang (Simelix) escribió:
>>> Aquí por ejemplo hay un caso que ilustra el hecho de no confiar
>>> demasiado en las estimaciones teóricas . Las estimaciones de Pablo et
>>> al se pueden ver afectadas por la eficiencia de la implementación del
>>> método index (el cual no me parece que sea muy O(1) que digamos, pero
>>> no tengo los detalles en la mano ...) . E.g. si fuera O(n), O(log(n))
>>> ... en el peor caso entonces todos los análisis anteriores no serían
>>> del todo precisos (CMIIW)
>>>
>>
>> index no es O(1), sino que tarda tanto como tenga que buscar. Si tiene
>> que recorrer toda la lista, será O(n). En este caso, el tiempo total es
>> O(n) porque no se pasa dos veces por el mismo elemento de conjunto,

AFAICS sí se hace esto dentro de `index` , ¿ o no ? Lo que el ciclo
«no se ve» y por tanto está implícito (y es posible pasar por alto ese
detalle ;o)

CMIIW

-- 
Regards,

Olemis.

Blog ES: http://simelo-es.blogspot.com/
Blog EN: http://simelo-en.blogspot.com/

Featured article:
Support micro-seconds as added by Trac in revision 9210 for upcoming
0.12... - http://bitbucket.org/osimons/trac-rpc-mq/changeset/62ffe719a84a/



Más información sobre la lista de distribución Python-es