Spiegazione dell'analisi asintotica per lo studio della complessità di un algoritmo. Studio del caso migliore, medio e peggiore di un algoritmo. Esempio.
mi stai letteralmente salvando la vita, mercoledì ho l'orale dell'esame di algoritmica e non sono ancora riuscita a capire come si fa l'analisi del costo di un algoritmo!! grazie mille, meriti molti più iscritti 😭😭
Geniale! questi sono degli ottimi video per chiarire meglio determinati concetti essendo che vengono spiegati in modo semplice e tranquillo. Davvero utile, bravissima.
@@Algoritmi01 Ho una domanda, quando hai spiegato T(n) a cosa fosse uguale in base all'algoritmo di ricerca sequenziale, nel tempo medio è uscito quel risultato "(n+1)/2", quindi T(n) = teta di cosa? di (n+1)/2?
Penso tu abbia sbagliato nel definire la complessità sottolineare. Nell'algebra asintotica le costanti moltiplicative vengono "ignorate" (ora non ricordo la definizione formale), comunque in breve k*O(n)=O(n). Oltretutto fai l'esempio della ricerca binaria che è ordine di O(logn), che è effettivamente sottolineare, ma non segue la tua definizione k*O(n) con k
Ciao, io avrei bisogno di una mano con l’esame di algoritmi, non capisco come fare a scegliere le strutture adatte Posso contattarti in qualche modo? Grazie mille
Ciao, se hai qualche dubbio in particolare scrivimi tranquillamente anche qui. Se posso esserti di aiuto ne sarò felice. Considera che per me il canale è solo hobby 😊
Un codice del genere (con un' istruzione return all'interno di un ciclo) nella mia università è considerato errato (anche se produce un corretto output). Poi fossi stato in te , prima di introdurre le definizioni di Omega, Theta e O-grande) avrei prima introdotto i concetti di operazioni elementari e conteggio di essi (su un pezzo di codice migliore: stilisticamente parlando)
Ciao, grazie per il tuo feedback. Vorrei tuttavia precisare che in questi video sto scrivendo algoritmi con uno pseudocodice proprio perché non voglio (e non deve esserlo per la natura stessa di un algoritmo) tener legato il concetto di algoritmo ad un singolo linguaggio che avrà un suo stile e delle sue regole. Ritengo che a livello di algoritmo un return sia più esplicativo rispetto ad una serie di istruzioni che poi dovrebbero tradurre il concetto di return e quindi lo renderebbero meno leggibile. Per il discorso delle operazioni elementari vedrai che poi nello studio della complessità di ogni singolo algoritmo (nei video successivi) si vedrà e si applicherà più dettagliatamente.
In realtà essendo il return una condizione di uscita è assolutamente lecito metterlo dove è più semanticamente corretto, quindi anche dentro un ciclo. Da qui il fatto che una funzione può avere più return al suo interno. All’università se ne fa una questione di stile, ma personalmente posso dirti che per quanto competenti, i docenti dell’Università non sono assolutamente pratici e quindi tendono spesso ad insegnare cose che poi nella pratica e nella realtà sono differenti e a volte più semplici (e corrette). Per altro credo che la ragazza del video parlasse di pseudo codice (come è giusto che sia), quindi un algoritmo si scrive così, poi si implementa nel linguaggio X con la sua sintassi (tuttavia nulla ti vieta di mettere 50 return in una funzione, cicli compresi, se è più leggibile e corretto). -StackOverflow