I migliori corsi e programmi online per algoritmo

Pubblicato il:

aggiornato:

Nel 2019, quasi il 40 per cento degli sviluppatori proviene da ambienti non informatici. Molti imparano a programmare tramite corsi online come quelli elencati di seguito. Ovviamente, questo è un modo efficace per imparare a programmare, e noi di TUN siamo orgogliosi sostenitori dell'educazione online. Tuttavia, un aspetto negativo di imparare a programmare online è che potresti perdere importanti concetti di informatica che possono essere utilizzati per risolvere problemi di programmazione pratica.

Gli algoritmi sono uno di questi argomenti. Sebbene i programmatori non pensino necessariamente a concetti algoritmici di grande immagine nella loro vita lavorativa quotidiana, una conoscenza di base degli algoritmi è fondamentale per capire come funzionano i computer e elaborare le informazioni. Comprendere astrazioni come gli algoritmi può anche aiutarti a scrivere codice più pulito e meglio strutturato. E a un livello più pratico, gli algoritmi sono un argomento comune nelle interviste di programmazione.

Conoscere un argomento di informatica elevata come gli algoritmi può essere una prospettiva intimidatoria. Fortunatamente, non è necessario tornare a scuola per farlo. Grazie a siti Web come Udemy, Courserae Pluralsight, ci sono migliaia di corsi online gratuiti e convenienti sugli algoritmi. Abbiamo messo insieme un elenco dei nostri preferiti, in modo che tu possa imparare nel tuo tempo libero, comodamente da casa tua.

Corsi online su algoritmos

1. Un'introduzione agli algoritmi

Questo è un corso introduttivo che si concentra su applicazioni pratiche di algoritmi. Si basa sul concetto che le strutture di dati di base possono essere utilizzate in contesti quotidiani per semplificare le soluzioni ai problemi di programmazione comuni. Imparerai come leggere e analizzare la complessità degli algoritmi, in modo da poter prevedere come funzionerà un programma senza eseguirlo. Imparerai come utilizzare strategicamente algoritmi semplici e complessi per risolvere i problemi e ridurre i tempi di calcolo. La fine del corso presenta anche alcuni concetti teorici di alto livello, poiché affronterai le classi di complessità P e NP e la famosa domanda P contro NP. Insegnato da Rasmus Amossen, uno sviluppatore di software con un dottorato di ricerca in informatica, questo corso è ottimo per gli studenti che hanno una buona conoscenza della programmazione, ma non si sono ancora avventurati nel mondo degli algoritmi.

  • Crediti universitari: NO - Solo certificato
  • Prezzo: Prova gratuita 10-day e poi $ 35 fatturati mensilmente o $ 299 fatturati annualmente per piano personale; $ 449 fatturato annualmente per piano Premium
  • Aiuto finanziario o borse di studio: NO
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: 4 ore, 4 minuti
  • Le lingue: Inglese
  • Venditore: Pluralsight

Nota: I prezzi per tutti i corsi elencati in questo articolo sono validi alla data di pubblicazione, ma sono soggetti a modifiche.

2. Masterclass di algoritmi e strutture dati JavaScript

Questo corso Colt Steele di Udemy e istruttore di bootcamp è un'introduzione interattiva e completa agli algoritmi e all'informatica. Include oltre 21 ore di video lezioni, con sfide e progetti sparsi nel corso. Il corso inizia con concetti di grande immagine come notazione di Big O e ricorsione. Imparerai quindi un approccio in cinque passaggi alla risoluzione dei problemi che utilizzerai durante il corso e nelle interviste di programmazione. Da lì, ti immergerai in profondità in vari tipi di algoritmi, tra cui algoritmi di ricerca e diversi tipi di algoritmi di ordinamento (quicksort, mergesort, radix sort, ecc.) Lavorerai quindi con strutture di dati, implementando 10 da zero. Alla fine, lavorerai con alcuni argomenti avanzati come cumuli, grafici e l'algoritmo del percorso più breve di Dijkstra. Il corso richiede una conoscenza di JavaScript di base, ma non richiede alcuna conoscenza preliminare di algoritmi o concetti di struttura dei dati.

  • Crediti universitari: NO - Solo certificato di completamento
  • Prezzo: $ 20.99 in vendita ($ 149.99 prezzo normale)
  • Aiuto finanziario o borse di studio: NO
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: 21 ore, 30 minuti
  • Le lingue: Inglese con sottotitoli in inglese, indonesiano, italiano, polacco e rumeno
  • Venditore: Udemy

3. L'intervista di codifica Bootcamp: algoritmi + strutture dati

Ogni potenziale sviluppatore sa che dovrebbe temere il temuto colloquio di programmazione. Questo corso è progettato per insegnarti tutto ciò di cui hai bisogno su algoritmi e strutture dati per il tuo colloquio. Il corso tratta una serie di algoritmi e strutture di dati relativamente semplici che spesso emergono in domande di codifica per i colloqui. L'istruttore Stephen Grider non passa direttamente alla soluzione. Piuttosto lavorerai costantemente su ogni domanda, così uscirai con una comprensione di come e perché l'algoritmo funziona, anche se non hai una laurea in informatica. In altre parole, imparerai a pensare e ad agire come un programmatore. Questo corso è progettato per persone che hanno una conoscenza di base molto scarsa o assente di algoritmi e strutture dati, ma è necessario conoscere JavaScript di base.

  • Crediti universitari: NO - Solo certificato di completamento
  • Prezzo: $ 19.99 in vendita ($ 89.99 prezzo normale)
  • Aiuto finanziario o borse di studio: NO
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: 12 ore, 51 minuti
  • Le lingue: Inglese con sottotitoli in inglese, indonesiano, italiano, giapponese, polacco, portoghese, rumeno e tailandese
  • Venditore: Udemy

4. Algoritmi, parte I

Questo è il primo di un corso in due parti dell'Università di Princeton su algoritmi e strutture dati, con particolare attenzione alla programmazione e alla risoluzione dei problemi, con esempi e applicazioni del mondo reale. Algoritmi, parte I copre i tipi di dati, l'ordinamento e la ricerca. Innanzitutto, imparerai una varietà di tipi di dati tra cui stack, code, borse, ritrovamenti sindacali e code prioritarie. Passerai quindi agli algoritmi di ordinamento comuni come quicksort, mergesort, heapsort e ordinamenti radix. Infine, copre i metodi di ricerca come alberi di ricerca binari, alberi di ricerca binari rosso-nero e tabelle hash. Imparerai anche alcune analisi di algoritmo di base e imparerai a misurare il tempo di esecuzione dei programmi e ad usare modelli matematici per spiegare il loro comportamento. Da solo, Algoritmi, parte I serve da forte introduzione agli algoritmi e alle strutture di dati. Se sei interessato a immergerti in algoritmi e strutture di dati più complessi, considera di passare al secondo modulo Algoritmi, parte II.

  • Crediti universitari: NO - Solo certificato di corso
  • Prezzo: LIBERO di controllare, ma c'è una tassa per guadagnare e comprare un certificato di corso
  • Aiuto finanziario o borsa di studio: SI
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: Circa. 32 ore (6 settimane, 6-10 ore a settimana consigliate)
  • Le lingue: Inglese con sottotitoli in inglese, coreano e russo
  • Venditore: Coursera

5. Algoritmi, parte II

Il primo modulo del corso in due parti della Princeton University su algoritmi e strutture dati (Algoritmi, parte I) si concentra su strutture di dati di base e algoritmi di ordinamento e ricerca. Nel questo secondo modulo, gli algoritmi di elaborazione di grafici e stringhe sono al centro della scena. Il corso inizia a coprire algoritmi grafici come la ricerca in ampiezza, la ricerca in profondità, l'algoritmo di Prim e l'algoritmo di Kruskal per il problema del minimo spanning tree (MST) e l'algoritmo del percorso più breve di Dijkstra (SPT). Successivamente, imparerai gli algoritmi di elaborazione delle stringhe come l'algoritmo Knuth-Morris-Pratt (KMP), le espressioni regolari, l'albero di ricerca ternaria, la compressione del codice Huffman e l'algoritmo di compressione dei dati Lempel-Ziv-Welch (LZW). Infine, tratterai alcuni algoritmi avanzati come B-tree, suffix array e maxflow, che fanno uso degli algoritmi di base trattati in precedenza. Nell'ultima sezione, affronterai il famigerato problema P contro NP e discuterai della possibilità di un modello universale di risoluzione dei problemi.

  • Crediti universitari: NO - Solo certificato di corso
  • Prezzo: LIBERO di controllare, ma c'è una tassa per guadagnare e comprare un certificato di corso
  • Aiuto finanziario o borsa di studio: SI
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: Circa. 34 ore (6 settimane, 6-10 ore a settimana consigliate)
  • Le lingue: Inglese con sottotitoli in inglese e coreano
  • Venditore: Coursera

6. Utilizzo di strutture dati avanzate in applicazioni moderne

Questo corso di algoritmi avanzati supera l'ambito tipico dei corsi di algoritmo online. Con particolare attenzione all'applicazione pratica, imparerai le funzioni hash e le implementazioni della tabella hash, i filtri di fioritura e cucù, le strutture di dati disgiunti, gli alberi di tentativi e suffissi e gli indici spaziali come B-alberi, R-alberi e M- alberi. Imparerai tutte queste strutture di dati da una prospettiva teorica e pratica con molti esempi, quindi alla fine del corso dovresti sentirti a tuo agio ad applicarle per trovare soluzioni semplici a problemi complessi. Questo corso è il seguito di "Un'introduzione agli algoritmi, "Che copre le strutture dati di base e le tabelle hash e le strutture ad albero, nonché l'analisi della complessità di base. Se non hai familiarità con questi concetti, potresti prendere in considerazione l'idea di seguire prima il corso introduttivo.

  • Crediti universitari: NO - Solo certificato
  • Prezzo: Prova gratuita 10-day e poi $ 35 fatturati mensilmente o $ 299 fatturati annualmente per piano personale; $ 449 fatturato annualmente per piano Premium
  • Aiuto finanziario o borse di studio: NO
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: 4 ore, 22 minuti
  • Le lingue: Inglese
  • Venditore: Pluralsight

7. Algoritmi e strutture dati

In questo corso, gli studenti suddividono gli algoritmi funzionali di base e le strutture di dati, incluso l'ordinamento di selezione, la ricerca lineare e gli algoritmi di ricerca di bolle e le strutture di dati dell'elenco collegato. Imparerai come funzionano questi algoritmi, come confrontarli e come usarli in scenari di programmazione del mondo reale per semplificare e migliorare i tuoi programmi. Il corso è rivolto a programmatori con esperienza in un linguaggio di programmazione orientato agli oggetti, in particolare Java.

  • Crediti universitari: NO - Solo certificato di completamento
  • Prezzo: $ 39.99 al mese per un abbonamento "Learn" in vendita (prezzo normale $ 44.99)
  • Aiuto finanziario o borse di studio: NO
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: 20 ore
  • Le lingue: Inglese
  • Venditore: QuickStart

8. Strutture dati e algoritmi: Deep Dive Using Java

Questo corso analizza tutto ciò che è necessario sapere sulle strutture dei dati e sugli algoritmi, dalle matrici e dalla notazione Big O agli heap. Inizia con le basi ma scompone a fondo ogni struttura e concetto di dati, sia dal punto di vista teorico che pratico. Imparerai non solo quali sono le strutture dati e come funzionano, ma anche come implementarle in progetti e applicazioni di programmazione. Di conseguenza, è un ottimo corso per le persone che già conoscono le basi delle strutture dati e degli algoritmi ma che desiderano approfondire. Tuttavia, è adatto anche agli studenti che stanno appena iniziando a conoscere le strutture di dati. Il corso non richiede precedenti esperienze con algoritmi o strutture dati, ma è necessario conoscere un linguaggio di programmazione orientato agli oggetti, preferibilmente JavaScript. 

  • Crediti universitari: NO - Solo certificato di completamento
  • Prezzo: $ 18.99 in vendita ($ 99.99 prezzo normale)
  • Aiuto finanziario o borse di studio: NO
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: 16 ore
  • Le lingue: Inglese con sottotitoli in inglese, indonesiano, italiano e tailandese
  • Venditore: Udemy

9. Algoritmi avanzati in Java

Dopo aver appreso gli algoritmi e le strutture di dati trattati nella maggior parte dei corsi introduttivi (come la ricerca di base e gli algoritmi di ordinamento), è tempo di passare ad algoritmi più avanzati. Nel questo corso, imparerai gli algoritmi grafici, gli algoritmi di ricerca breadth-first e depth-first, il percorso più breve di Dijkstra, l'arbitraggio, i componenti fortemente connessi e altro ancora. Tutti questi argomenti sono discussi sia dal punto di vista teorico che pratico, con esempi di codifica per la maggior parte degli argomenti in modo da poter vedere come questi algoritmi sono effettivamente implementati negli scenari di programmazione. Questo corso richiede una comprensione degli algoritmi di base e una conoscenza di Java.

  • Crediti universitari: NO - Solo certificato di completamento
  • Prezzo: $ 18.99 in vendita ($ 199.99 prezzo normale)
  • Aiuto finanziario o borse di studio: NO
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: 9 ore, 46 minuti
  • Le lingue: Inglese con sottotitoli in inglese e spagnolo
  • Venditore: Udemy

10. Algoritmi: progettazione e analisi, parte 1

Questo corso, offerto dalla Stanford University tramite edX, è un programma di sei settimane che copre gli algoritmi da zero. Prima di seguire il corso, dovresti avere familiarità con le competenze di programmazione di base in un linguaggio come Python, Java o C. Il corso tratta la notazione "Big-oh", l'ordinamento e la ricerca, il divide et impera (metodo master, numeri interi e matriciali moltiplicazione, coppia più vicina), algoritmi randomizzati (QuickSort, algoritmo di contrazione per tagli minimi), strutture dati (heap, alberi di ricerca bilanciati, tabelle hash, filtri Bloom), primitive di grafi (applicazioni di BFS e DFS, connettività, percorsi minimi). Imparerai praticando e padroneggiando i fondamenti degli algoritmi attraverso varie valutazioni.

Se sei interessato ad approfondire l'argomento, dai un'occhiata a questo corso complementare offerto dallo stesso professore di Stanford: Algoritmi: progettazione e analisi, parte 2.

  • Crediti universitari: NO - Solo certificato verificato
  • Prezzo: GRATUITO per l'audit, ma c'è una commissione di $ 189 per guadagnare e acquistare un certificato verificato
  • Aiuto finanziario o borse di studio: SI
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: Settimane 6 (suggerite 2-4 ore settimanali)
  • Le lingue: Inglese con sottotitoli in inglese
  • Venditore: EDX

Programmi online su algoritmos

11 Specializzazione algoritmi

Questa specializzazione, offerto dalla Stanford University via Coursera, è un'introduzione completa agli algoritmi per studenti con esperienza di programmazione di base. Consiste in quattro corsi separati e si avvicina principalmente agli algoritmi da una prospettiva generale e teorica. Il programma inizia coprendo algoritmi di uso comune, tra cui divisione e conquista, ordinamento e ricerca e algoritmi randomizzati. Mentre ti sposti attraverso ogni corso, lavorerai con algoritmi, strutture dati e concetti sempre più complessi, concludendo con percorsi più brevi, completezza NP e strategie per affrontare problemi che non possono essere risolti in modo efficiente con un algoritmo.

I corsi 4:

Corso 1: Dividi e conquista, ordina e cerca e algoritmi randomizzati

Corso 2: Ricerca nel grafico, percorsi più brevi e strutture dati

Corso 3: Algoritmi avidi, alberi di spanning minimi e programmazione dinamica

Corso 4: Percorsi più brevi rivisitati, problemi NP-completi e cosa fare al riguardo

  • Crediti universitari: NO - Solo certificato di specializzazione
  • Prezzo: GRATUITO per l'audit, ma c'è una commissione per guadagnare e acquistare un certificato di specializzazione
  • Aiuto finanziario o borsa di studio: SI
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: Circa 4 mesi (suggerito 8 ore a settimana)
  • Le lingue: Inglese con sottotitoli in inglese
  • Venditore: Coursera

Programma MicroMaster in algoritmi e strutture dati

Offerto da UC San Diego, il "Programma MicroMaster in algoritmi e strutture dati"È completo come qualsiasi programma di algoritmi disponibile online. È composto da otto corsi separati, che coprono tutti i principali tipi di algoritmi e strutture di dati di base e avanzati. Imparerai non solo sull'applicazione degli algoritmi, ma su come progettare algoritmi per risolvere problemi computazionali e implementare soluzioni. Include anche interi corsi dedicati all'applicazione di algoritmi per risolvere i problemi del mondo reale. Ad esempio, nel penultimo corso, "Algoritmi grafici nel sequenziamento del genoma, "Esaminerai come gli algoritmi grafici possono essere utilizzati per assemblare un genoma da piccoli pezzi di DNA. Il corso si conclude con un impegnativo progetto capstone, in cui gli studenti hanno il compito di costruire un programma software originale e ottimizzato per il sequenziamento del genoma.

  • Numero di corsi: Corsi di specializzazione 8
  • Crediti universitari: NO - Solo certificato del programma MicroMasters
  • Prezzo: $ 1,080 in vendita ($ 1,200 prezzo normale)
  • Aiuto finanziario o borse di studio: SI
  • Apprendimento mobile: SI
  • Apprendimento autonomo: SI
  • Scadenze flessibili: SI
  • Tempo necessario per il completamento: Anno 1 (suggerite le ore di sforzo 288-360)
  • Le lingue: Inglese 
  • Venditore: EDX

Per altri corsi online, controlla TUN's elenco delle classi curate, o usare il motore di ricerca corsi online per trovare i migliori corsi online in qualsiasi materia.

Prova GRATUITA di 6 mesi

Quindi, goditi Amazon Prime a metà prezzo - 50% di sconto!

TUN AI – Il tuo assistente educativo

TUNAI

Sono qui per aiutarti con borse di studio, ricerca universitaria, lezioni online, aiuti finanziari, scelta delle specializzazioni, ammissione all'università e consigli di studio!

La Rete Università