Domanda

Come programmatore di computer autodidatta, spesso non riesco a stimare il valore O() per una particolare operazione.Sì, conosco a memoria la maggior parte di quelli importanti, ad esempio i tipi e le ricerche principali, ma non so come calcolarne uno quando arriva qualcosa di nuovo, a meno che non sia assolutamente ovvio.Esiste un buon sito web o testo che spieghi come farlo?Cavolo, non so nemmeno come lo chiamano gli informatici, quindi non posso cercarlo su Google.

È stato utile?

Soluzione

Se vuoi davvero imparare questo argomento, probabilmente avrai bisogno di un libro di testo standard di teoria e algoritmi.Non conosco nessun sito web che possa effettivamente insegnarti l'analisi della complessità ("complessità" o "complessità temporale" è il modo in cui chiami quei valori O();potresti anche voler cercare su Google "analisi degli algoritmi" o "introduzione agli algoritmi" o simili).

Ma prima: un'opzione gratuita.Ci sono diapositive di un corso tenuto da Erik Demaine e Charles Leiserson al MIT, che sono gratuite e hanno un bell'aspetto.Proverei sicuramente a leggerli e vedere se funziona per te.Sono Qui.

Ora, i libri di testo:

La scelta classica per un libro di testo è il libro di Cormen et al Introduzione agli algoritmi (potrebbe essere disponibile per l'acquisto una versione economica Qui e ricordo di aver visto online una versione gratuita (forse illegale), ma non ricordo dove).

Un libro più recente e in stile moderno, che secondo me è più divertente da leggere e una scelta migliore, è quello di Kleinberg e Tardos Progettazione di algoritmi.

Ecco alcuni siti Web con informazioni (li ho ottenuti cercando su Google "appunti di lezione sull'analisi degli algoritmi" senza virgolette):

Quanto sopra è scritto da un teorico dell'informatica.Quindi i programmatori o altre persone pratiche potrebbero avere opinioni diverse.

Altri suggerimenti

È chiamato Notazione O grande, ed è utilizzato in Teoria della complessità computazionale.

Gli articoli di Wikipedia sono un buon punto di partenza, così come la bibliografia in fondo alla pagina.

Introduzione agli algoritmi è il testo standard utilizzato nella maggior parte delle università.L'ho usato e posso consigliare quei capitoli sull'analisi degli ordini.Inizierei però con gli articoli nella risposta di Tim Howland.

Si chiama analisi algoritmica ed è una scienza a sé stante.Dai un'occhiata ad alcuni dei libri Qui

I tuoi collegamenti mi portano a un sito in Russo che sembra volere un ID utente e password.Errore legittimo, o troll?Paolo Tomblin

Il sito è in bulgaro e non dovresti aver bisogno di una password per accedere all'elenco dei file a cui ho linkato e scaricarne alcuni.A meno che, ovviamente, non vi sia una restrizione di accesso per gli IP provenienti dall'esterno della Bulgaria, cosa che davvero non so.

Mi spiace, non so come fare un commento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top