Ritiro tutto: per liste grosse il costo di calcolare (in python) a ogni
iterazione `(i + base) % len` è molto maggiore del costo di creare una sola
volta all'inizio la nuova lista:
In python3.8:
>>> import timeit
>>> setup = """def function1(lista, base):
... s = 0
... for e in lista[base:
Se k<=n, O(n+k) <= O(2n) che è == O(n)
In particolare il tempo necessario a stampare tutti gli elementi con print
(o a farci qualsiasi cosa di non estremamente banale) sarà molto maggiore
del tempo necessario a creare la nuova lista.
Mi aspetterei anch'io che la soluzione di cm sia più efficiente
>
>
> Le differenze non sono sostanziali, ma la prima è leggermente più
> efficiente
>
Ciao a tutti,
trovo l'approccio di cm formalmente corretto "iterate lungo una lista" e
non "create una lista".
Per cm O(n) per l'altra funzione O(n+k), perché non solo itera ma anche
estende.
Basta dare una oc
Ciao DanZa
Il giorno dom 16 feb 2020 alle ore 19:27 Daniele Zambelli
ha scritto:
>
> Ho confrontato le due funzioni:
>
> numel = 12
> lista = [i * 11 for i in range(numel)]
> base = 5
>
> def function1(lista, base):
> for e in lista[base:]+lista[:base]:
> print(e)
>
> def function2(lista,
Di passaggio: se non l'hai capita era perché evidentemente sono stato poco
chiaro nei commenti.
In effetti quella classe fa parecchie cose anche complicate.
Per lumi sono sempre disponibile, meglio se in privato così non si da
fastidio a nessuno.
E, magari, se mi fai delle domande, posso migliora
Il giorno dom 16 feb 2020 alle ore 20:05 alessandro medici
ha scritto:
> [...]
> L'uso è piuttosto semplice, supponendo tu abbia una lista:
>
> lista = [0,1,2,3,4,5,6,7,8,9]
> lista = Repslicing(lista)
>
> a questo punto puoi iterare la nuova lista anche con gli indici necessari a
> te:
>
> lista
Il dom 16 feb 2020, 19:27 Daniele Zambelli ha
scritto:
> Il giorno sab 15 feb 2020 alle ore 20:04 alessandro medici
> ha scritto:
> >
> >
> > Oggi è sabato. La cosa mi ha divertito ed ho pensato che valesse la pena
> generalizzare il problema:
> >
> >
> https://github.com/AlessandroMedici/add_a_
Il giorno sab 15 feb 2020 alle ore 20:04 alessandro medici
ha scritto:
>
>
> Oggi è sabato. La cosa mi ha divertito ed ho pensato che valesse la pena
> generalizzare il problema:
>
> https://github.com/AlessandroMedici/add_a_mood_for_slice/blob/master/RepSlip.py
Interessante... ma non l'ho capit
Oggi è sabato. La cosa mi ha divertito ed ho pensato che valesse la pena
generalizzare il problema:
https://github.com/AlessandroMedici/add_a_mood_for_slice/blob/master/RepSlip.py
___
Python mailing list
Python@lists.python.it
https://lists.python.it/mai
Il giorno gio 13 feb 2020 alle ore 16:23 Gabriele Battaglia
ha scritto:
>
> Buona sera.
> Se ho una lista che contiene 10 elementi e voglio scrivere un ciclo che
> itera dall'elemento 5, arriva alla fine e riprende finendo al 4.
> A parte gestire autonomamente l'indice con un algoritmo, esiste una
Il giorno gio 13 feb 2020 alle ore 16:23 Gabriele Battaglia
ha scritto:
>
> Buona sera.
> Se ho una lista che contiene 10 elementi e voglio scrivere un ciclo che
> itera dall'elemento 5, arriva alla fine e riprende finendo al 4.
> A parte gestire autonomamente l'indice con un algoritmo, esiste una
11 matches
Mail list logo