Come risolvere le funzioni di notazione O-grande

March 20

Come risolvere le funzioni di notazione O-grande


Big O - O sta per "Ordine" - notazione è uno dei modi scienziati informatici valutare le funzioni. Notazione O-grande esprime come funzioni "scale up" - come il tempo che ci vuole per fare una funzione aumenta quando la dimensione del set in fase di elaborazione aumenta. Se una funzione ha grande O notazione O (n), il tempo di elaborazione varia con la dimensione del set di elaborazione - se i doppi dimensione impostati, il tempo di elaborazione raddoppia. Se una funzione ha grande O notazione O (n al quadrato), il tempo di elaborazione varia come il quadrato della dimensione del set di trasformazione - se le dimensioni del set raddoppia, il tempo di elaborazione quadruplica.

istruzione

1 Trovare la "operazione fondamentale" della funzione che si sta risolvendo il grande O per. La funzione fondamentale è quello che il computer farà che sarà in aumento quando la dimensione del set di trasformazione aumenta. Ad esempio, se si sta facendo una funzione di ricerca - trovare un elemento in una lista che ha una certa chiave - l'operazione fondamentale è il confronto un elemento per la vostra chiave. Se la dimensione impostata aumenta, ci stanno per essere più confronti. Se la funzione ordina oggetti - pone una serie di elementi in ordine - l'operazione fondamentale sta guardando due prodotti e poi decidere quale viene prima in ordine.

2 Guardare tutte le altre operazioni in funzione. Se ogni altra operazione in funzione ha la stessa frequenza l'operazione fondamentale o è indipendente dalla dimensione set di trasformazione, l'operazione fondamentale è una buona scelta e si può utilizzare per risolvere per l'o-grande. Se c'è un'altra operazione nella funzione che si comporta in qualche modo più complicato, sarà necessario interrompere la funzione in due o più parti e risolvere per il grande O di entrambe le parti. Il più grande grande O si ottiene da tutte le parti sarà il grande O della funzione.

3 Contare le operazioni fondamentali per una serie di elaborazione di prova, poi contare le operazioni fondamentali per una serie di elaborazione di dimensione doppia, poi per dimensioni triple. Se il numero di operazioni aumenti fondamentali destra insieme con l'aumento delle dimensioni dei gruppi di trasformazione, la o-grande per questa funzione è O (n). Se il numero di incrementi operazioni fondamentali di una quantità fissa quando la dimensione del set di trasformazione viene moltiplicato per la stessa quantità, l'o-grande è O (log n). Se il numero di operazioni aumenta fondamentali come il quadrato dell'aumento del set di trasformazione, la o-grande è O (n quadrato). In altre parole, la funzione di n esprime come l'aumento del numero di operazioni fondamentali riflette come la dimensione del set di elaborazione aumenta.

Consigli e avvertenze

  • In informatica, logaritmi sono quasi sempre logaritmi base due. Se la dimensione set raddoppia, il logaritmo della dimensione set aumenta di uno.
  • La parte "ordine" della grande O significa che si ignorano le costanti e coefficienti dei polinomi. In modo da non vedere le cose come O (n + 3). Sarà solo O (n).