Implementazione (Parte 1)
Lezione 5 di 9 del corso Ricerca in profondità - Algoritmi su grafi di Coddy.
Costruiremo DFS partendo dalla ricerca dei nodi adiacenti.
Sfida
FacilePrima di attraversare un grafo, dobbiamo conoscere i vicini di ogni vertice. Creiamo questa ricerca a partire dall’elenco piatto degli archi.
Scrivi una funzione chiamata getNeighbors che accetta l’array edges (coppie piatte [u0, v0, u1, v1, ...], non orientato) e un vertice node, e restituisce l’elenco ordinato dei vicini di node, senza duplicati.
Per esempio, getNeighbors([0,1, 0,2, 1,2, 3,0], 0) restituisce [1, 2, 3].
Provalo tu
#include <stdlib.h>
int* getNeighbors(int* edges, int edges_size, int node, int* returnSize) {
// Scrivi il codice qui
*returnSize = 0;
return edges;
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Ricerca in profondità - Algoritmi su grafi
2L’algoritmo
Come funziona?PseudocodiceImplementazione (Parte 1)Implementazione (Parte 2)Esercitati da solo: Compilatore C online