Question: Write in the Racket programming language functions: (a) Graph to define a graph. A graph is a list of (node list of nodes) (b) neighbors
Write in the Racket programming language functions: (a) Graph to define a graph. A graph is a list of (node list of nodes) (b) neighbors neighbors(node, graph) = list of nodes neighbors: node graph -> list of nodes to compute nodes neighbors in graph. (c) find-route find-route(node, node, graph) = list of nodes or false find-route: node node graph -> list of nodes or false to compute a list of nodes, starting with the origination node and ending with the destination node in a graph. If there is no path, the value of function is false. Test the program for the graph Example G has no neighbors: empty A has the list of neighbors (B E) Hint (define Graph etc. ) (define (neighbors a-node a-graph) etc. ) (define (find-route origination destination graph) etc. ) Test (define Graph '((A (B E)) (B (E F)) (C (D)) (D ()) (E (C F)) (F (D G)) (G ()))) (find-route 'A 'G Graph) -> (list 'A 'B 'E 'F 'G) (find-route 'C 'G Graph) -> #f
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
