Pagina 1 di 2

qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 15:30
da danix
Linus Torvalds sorts in O(1).

vorrei tradurla ma non riesco a capire cosa significhi... :(

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 15:38
da targzeta
Forse può aiutarti questo link, in particolare qui

Emanuele

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 15:55
da Mario Vanoni
spina ha scritto:Forse può aiutarti questo link, in particolare qui

Emanuele
Concordo, la mia ricerca in inglese da lo stesso risultato.

http://en.wikipedia.org/wiki/Sorting_algorithm

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 16:02
da danix
:D grazie, almeno adesso riesco a capire di cosa si parla, ma è un po' troppo oltre le mie conoscenze, voi come la tradurreste quella frase??
Linus Torvalds ordina in O(1)
potrebbe andare??

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 16:20
da Mario Vanoni
La frase e` citata anche qui

http://www.chineselinuxuniversity.net/ospics/302.shtml

se guardi

http://en.wikipedia.org/wiki/Comparison_sort

mi sembra piuttosto

Linus Torvalds classifica in ordine matematico perfetto.

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 16:35
da d4z_c0nf
danix ha scritto:Linus Torvalds sorts in O(1).

vorrei tradurla ma non riesco a capire cosa significhi... :(
Ma cos'è una cosa tipo quelle frasi per Chuck Norris?
Comunque sì il concetto è che 0(1) è la complessità computazionale di un'istruzione semplice, tipo un assegnamento è O(1).
Linus Torvalds ordina in O(1), può essere un po' equivoco, perchè in italiano "ordina" vale sia per "fare un ordine" che per "fare ordine", però visto che si parla di Informatica, potresti tradurlo tranquillamente così.
rock

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 17:15
da Mario Vanoni
Linus Torwalds ordina in ... Linux.

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 18:27
da Vic Steele
O(1) è una notazione asintotica, che, come tutte le altre notazioni, dovrebbe indicare l'efficienza di un algoritmo (principalmente dovuto a tempo di esecuzione e spazio di memoria richiesto).

O(1) in particolare rappresenta l'algoritmo "perfetto", almeno per il caso d'uso in cui è implementato. Sarebbe quello che richiede, per l'appunto, minor tempo e basso costo di risorse.
Un problema principale degli algoritmi e delle strutture dati che ci hanno fatto molto studiare, almeno per questioni didattiche (ma è un problema abbastanza comune e frequente anche nella realtà), è proprio quello dell'ordinamento (il Sort) dei dati o dei valori contenuti in una struttura dati.
Ci sono diversi algoritmi che sono più efficienti di altri in determinati casi d'uso, ma meno efficienti in altri casi. Un algoritmo può essere più veloce quando si tratta di ordinare o ricercare valori in una determinata posizione, rispetto ad un altro che in quella posizione sarà più scadente ma in testa, ad esempio, sarebbe migliore.
O(1), ripeto, rappresenta l'algoritmo più veloce possibile per quel caso d'uso. Tradurrei tranquillamente come hai già tradotto tu, ha senso.
d4z_c0nf ha scritto: Linus Torvalds ordina in O(1), può essere un po' equivoco, perchè in italiano "ordina" vale sia per "fare un ordine" che per "fare ordine", però visto che si parla di Informatica, potresti tradurlo tranquillamente così.
Esatto, gli addetti ai lavori capiscono tranquillamente (e ci sono arrivato anche io :D ).
Diciamo che è una battuta fatta per essere nerd, così come il concetto in se e per se di esaltare Torvalds.
Se una persona completamente estranea leggesse questa frase, non arriverebbe in "ordina" ma si fermerebbe a "Linus Torvalds".
Poi, sicuramente saranno in tanti a non conoscere le notazioni (ma nemmeno io, fino a poco dopo l'inizio di quest'anno), ma credo che chi scrive queste cose lo faccia anche apposta.

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 19:07
da Blizzard
Ho dato solo un'occhiata veloce e mi scuso se è gia stato detto.

Negli algoritmi per fare l'ordinamento di n elementi è stato calcolato un lower bound di sostituisci la lettera greca => OmegaGrande( n log(n) ).
Il lower bound è il limite calcolato per un dato algoritmo anche se un algoritmo con una tale complessità non è stato ancora inventato.
Pertanto Linus Torvalds è in grado di ordinare con un algoritmo "impossibile" per noi comuni mortali :D

Se è stato gia detto sorry! (ma non credo di aver visto lower bounds)

Gio

Re: qualcuno mi sa spiegare questa frase??

Inviato: ven 26 giu 2009, 19:36
da Mario Vanoni
Quindi

Linus Torvalds sorts in O(1).

si puo` tradurre senza problemi in

Linus Torwalds ordina in ... Linux.
...

Some of the most well-known comparison sorts include:
* Quicksort
* Heapsort
* Merge sort
* Introsort
* Insertion sort
* Selection sort
* Bubble sort

...
visto che Linus e` al di sopra di questi dettagli.

Re: qualcuno mi sa spiegare questa frase??

Inviato: sab 27 giu 2009, 9:03
da danix
eh eh, grazie a tutti, mi avete reso ancora più chiaro l'argomento... :D si, rispondendo a Rocco, la frase è un'esaltazione di Linus e può essere paragonata a quelle su chuck norris...

Ancora grazie, grazie, grazie... :thumbright:

Re: qualcuno mi sa spiegare questa frase??

Inviato: sab 27 giu 2009, 12:06
da m0rdr3d
Traducibile anche con "Linus Torvalds ordina in tempo costante"
Blizzard ha scritto:Negli algoritmi per fare l'ordinamento di n elementi è stato calcolato un lower bound di sostituisci la lettera greca => OmegaGrande( n log(n) ).
In realtà il lower bound di n*log(n) è solo per gli algoritmi che ordinano facendo confronti, ci sono invece algoritmi che, operando su di un dominio finito e noto a priori, ordinano in O(n), come ad esempio il counting sort.

Scusate la precisazione, ma già che se ne parlava...

Re: qualcuno mi sa spiegare questa frase??

Inviato: sab 27 giu 2009, 13:42
da Blizzard
m0rdr3d ha scritto:Traducibile anche con "Linus Torvalds ordina in tempo costante"
Blizzard ha scritto:Negli algoritmi per fare l'ordinamento di n elementi è stato calcolato un lower bound di sostituisci la lettera greca => OmegaGrande( n log(n) ).
In realtà il lower bound di n*log(n) è solo per gli algoritmi che ordinano facendo confronti, ci sono invece algoritmi che, operando su di un dominio finito e noto a priori, ordinano in O(n), come ad esempio il counting sort.

Scusate la precisazione, ma già che se ne parlava...
Si lo so, ci sono counting sort ed altri (anche radix e bucket se non erro hanno performance migliori del lower bound), ma non sono algoritmi generici ed operano in particolari condizioni, come avevi anticipato. Per gli algoritmi di sort generici su confronti (che dovrebbero essere sempre applicabili) il lower bound resta sempre {Omega Grande}(n log n) e penso si riferisse a questi ultimi la battuta.

Gio

P.S.
Se la discussione continua si può aprire un topic apposito in programmazione dato che "mi" risulta piuttosto interessante.

Re: qualcuno mi sa spiegare questa frase??

Inviato: sab 27 giu 2009, 13:53
da danix
se volete continuare qui non c'è problema per quanto mi riguarda, anzi mi piace leggere scambi d'opinione tra persone preparate. Al più la posso spostare in programmazione se questa non è la sezione più consona... ;)

Re: qualcuno mi sa spiegare questa frase??

Inviato: sab 27 giu 2009, 15:15
da m0rdr3d
Blizzard ha scritto:Per gli algoritmi di sort generici su confronti (che dovrebbero essere sempre applicabili) il lower bound resta sempre {Omega Grande}(n log n) e penso si riferisse a questi ultimi la battuta.
Sì, beh, anche con algoritmi che girano su O(n) la battuta "funziona" lo stesso :D , il concetto è che ordinare in O(1) nel caso pessimo, è impossibile, è come dire appunto "Chuck Norris ha contato fino ad infinito. Due volte" (una delle mie preferite ;-) )

P.S.: Se ti interessa, nella mappatura della mia tastiera riesco ad ottenere il carattere Ω -omega- con la combinazione di tasti AltGr + Shift + q