Corsi di algoritmi sui grafi in Java
Padroneggia gli algoritmi sui grafi con Coddy. Esercitati con visite, cammini minimi, ordinamento topologico e alberi ricoprenti minimi: DFS, BFS, Dijkstra, Bellman-Ford, Kruskal e Prim, con sfide pratiche in ogni linguaggio.
Ricerca in profondità - Algoritmi su grafi
PopolareImpara a padroneggiare la ricerca in profondità (DFS), un metodo fondamentale per esplorare un grafo. Costruisci la lista di adiacenza, implementa una DFS iterativa nel linguaggio che preferisci, analizzane la complessità O(V + E) e usala per contare le componenti connesse e misurarne le dimensioni.
Certificato al completamento
- 9
- 3
- 1
- 54
Algoritmo di Prim - Algoritmi sui grafi
PopolarePadroneggia l’algoritmo di Prim per gli alberi ricoprenti minimi: costruisci un unico albero a partire da un vertice iniziale, aggiungendo ogni volta l’arco di attraversamento meno costoso. Implementalo nel linguaggio che preferisci e rispondi a query sugli archi collo di bottiglia e sulla connettività: è l’approccio complementare a Kruskal.
Certificato al completamento
- 9
- 3
- 1
- 55
Algoritmo di Bellman-Ford - Algoritmi sui grafi
Padroneggia l’algoritmo di Bellman-Ford: trova i cammini minimi da una singola sorgente anche con pesi negativi sugli archi e rileva i cicli negativi. Implementa una passata di rilassamento, l’algoritmo completo nel linguaggio che preferisci e rispondi a query sulle distanze e sui cicli.
Certificato al completamento
- 9
- 3
- 1
- 54
Ordinamento topologico - Algoritmi sui grafi
Impara l’ordinamento topologico: ordina un grafo diretto aciclico in modo che ogni arco punti in avanti. Calcola i gradi entranti, costruisci un ordinamento con l’algoritmo di Kahn nel linguaggio che preferisci, rileva i cicli e trova il cammino più lungo in un DAG.
Certificato al completamento
- 9
- 3
- 1
- 55
Ricerca in ampiezza - Algoritmi sui grafi
Padroneggia la ricerca in ampiezza (BFS), l’attraversamento dei grafi livello per livello alla base dei cammini minimi. Crea una mappa dei vicini, implementa una BFS iterativa con una coda nel linguaggio che preferisci e usala per trovare le distanze dei cammini minimi nei grafi non pesati.
Certificato al completamento
- 9
- 3
- 1
- 54
Algoritmo di Kruskal - Algoritmi sui grafi
Padroneggia l'algoritmo di Kruskal per trovare alberi ricoprenti minimi. Implementa una struttura union-find, costruisci un albero ricoprente minimo aggiungendo l'arco più economico che non crea cicli, usando il linguaggio che preferisci, e rispondi a query sulla connettività e sugli archi collo di bottiglia.
Certificato al completamento
- 9
- 3
- 1
- 57
Algoritmo di Dijkstra - Algoritmi su grafi
Padroneggia l'algoritmo di Dijkstra, un metodo greedy per trovare i cammini minimi da una singola sorgente nei grafi con pesi non negativi. Leggi gli archi pesati, implementa il calcolo completo delle distanze nel linguaggio che preferisci e rispondi a query sui percorsi tra due vertici e sul vertice più lontano.
Certificato al completamento
- 9
- 3
- 1
- 54