On 04/03/10 16:43, Kiko wrote:
indices = []
ultimo = -1
for i in subconjunto:
ultimo = conjunto.index(i, ultimo+1)
indices.append(ultimo)
#yield ultimo
El yield me da error tal como lo he puesto ¿?.
Claro, un "yield" sólo funciona dentro de un generador. Supongo que nunca has
2010/3/4 Pablo Angulo :
> Olemis Lang (Simelix) escribió:
>> No me parece que `index` recuerde el último índice de la lista (no
>> estamos hablando de iteradores ;o) entre dos llamadas diferentes para
>> recomenzar la búsqueda de un nuevo elemento (¿ o es que funciona así
>> internamente ?) ...
> N
2010/3/4 Pablo Angulo :
> Olemis Lang (Simelix) escribió:
>> Si no es O(1) entonces sospecho que en
>>
>> {{{
>> #!python
>>
>> ultimo = -1
>> for v in subconjunto:
>> ultimo = conjunto.index(v, ultimo+1)
>> yield ultimo
>> }}}
>>
>> hay un ciclo `for` explícito más un ciclo implícito `i
2010/3/4 Pablo Angulo :
> Kiko escribió:
>> tiempo de la primera opción: 0.0149998664856
>> for i in subconjunto:
>> ultimo = conjunto.index(i, ultimo+1)
>> indices.append(ultimo)
>> Los primero 25 valores de indices = [0, 3, 6, 9, 12, 15, 18, 21, 24,
>> 27, 30, 33, 36, 39, 42, 45, 48, 51,
2010/3/4 Olemis Lang (Simelix) :
> 2010/3/4 Pablo Angulo :
>> 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 implemen
El 4 de marzo de 2010 17:33, Pablo Angulo escribió:
> Kiko escribió:
> > tiempo de la primera opción: 0.0149998664856
> > for i in subconjunto:
> > ultimo = conjunto.index(i, ultimo+1)
> > indices.append(ultimo)
> > Los primero 25 valores de indices = [0, 3, 6, 9, 12, 15, 18, 21, 24,
> >
2010/3/4 Pablo Angulo :
> 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
2010/3/4 Kiko :
> El 4 de marzo de 2010 16:27, Olemis Lang (Simelix)
> escribió:
>> 2010/3/4 Arnau Sanchez :
>> > On 04/03/10 14:02, Pablo Angulo wrote:
>> >
>
[...]
>
> tiempo de la tercera opción: 0.046313354
> indices2 = [bisect.bisect(conjunto, i) for i in subconjunto]
> Los primero 25 val
El 4 de marzo de 2010 16:27, Olemis Lang (Simelix)
> escribió:
> 2010/3/4 Arnau Sanchez :
> > On 04/03/10 14:02, Pablo Angulo wrote:
> >
> >> indices = []
> >> ultimo = 0
> >> for v in subconjunto:
> >> ultimo += conjunto.index(v,ultimo)
> >> indices.append(ultimo)
> >
> > Creo que el +=
2010/3/4 Arnau Sanchez :
> On 04/03/10 14:02, Pablo Angulo wrote:
>
>> indices = []
>> ultimo = 0
>> for v in subconjunto:
>> ultimo += conjunto.index(v,ultimo)
>> indices.append(ultimo)
>
> Creo que el += sobra, list.index() devuelve el índice absoluto:
>
> ultimo = conjunto.index(v, ulti
On 04/03/10 14:02, Pablo Angulo wrote:
indices = []
ultimo = 0
for v in subconjunto:
ultimo += conjunto.index(v,ultimo)
indices.append(ultimo)
Creo que el += sobra, list.index() devuelve el índice absoluto:
ultimo = conjunto.index(v, ultimo)
Y si no me equivoco el índice podría s
2010/3/4 Olemis Lang (Simelix) :
> 2010/3/4 Pablo Angulo :
>> Daniel Garcia Moreno escribió:
>
[...]
> se puede lograr más aún si se sabe que una lista es un
> subelemento de la otra
Precisión: subconjunto
--
Regards,
Olemis.
Blog ES: http://simelo-es.blogspot.com/
Blog EN: http://simelo-en.bl
2010/3/4 Pablo Angulo :
> Daniel Garcia Moreno escribió:
>>
>>> Si la lista grande tiene N elementos y la pequeña M, puedes elegir entre
>>> O(Mlog(N)), usando bisect. o O(N), con la técnica que te decía antes.
>>>
>> O puedes combinar las dos, buscar desde el último indice en adelante
>> pero hace
El 4 de marzo de 2010 13:18, Juan Ignacio escribió:
> Oppps, me falto la interrogante, era una pregunta :-) ¿Conjunto y
> subconjunto están (o pueden estar) ordenados?
> ___
> Python-es mailing list
> Python-es@python.org
> http://mail.python.org/mailma
Oppps, me falto la interrogante, era una pregunta :-) ¿Conjunto y
subconjunto están (o pueden estar) ordenados?
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/
Conjunto y subconjunto están (o pueden estar) ordenados
2010/3/4 Kiko :
> Hola a todos.
>
> Estoy intentando buscar los indices de un subconjunto dentro de un conjunto
> y quiero saber si existe algo más eficiente que lo que he pensado.
>
> Me explico, por ejemplo, yo tengo:
>
> conjunto = range(1
Hola a todos.
Estoy intentando buscar los indices de un subconjunto dentro de un conjunto
y quiero saber si existe algo más eficiente que lo que he pensado.
Me explico, por ejemplo, yo tengo:
conjunto = range(1000, 1100, 1)
subconjunto = range(1000, 1100, 3)
Quiero saber la posición que tendría
17 matches
Mail list logo