Question: Design an algorithm which is given a directed graph G=(V,E) represented in adjacency list and determines if there is a vertex in G that can

Design an algorithm which is given a directed graph G=(V,E) represented in adjacency list and determines if there is a vertex in G that can reach every other vertex. For two vertices a,bV, we say a can reach b if there exists a directed path from a to b. Consider the following two graphs: G1=(V1,E1),V1={a,b,c},E1={ab,ac} and G2=(V2,E2),V1={a,b,c},E2={ba,ca} G1 has one such vertex which is a and G2 doesn't have such vertex. Your algorithm should run in time O(V+E). Prove the correctness of your algorithm and analyze the running time. Design an algorithm which is given a directed graph G=(V,E) represented in adjacency list and determines if there is a vertex in G that can reach every other vertex. For two vertices a,bV, we say a can reach b if there exists a directed path from a to b. Consider the following two graphs: G1=(V1,E1),V1={a,b,c},E1={ab,ac} and G2=(V2,E2),V1={a,b,c},E2={ba,ca} G1 has one such vertex which is a and G2 doesn't have such vertex. Your algorithm should run in time O(V+E). Prove the correctness of your algorithm and analyze the running time
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
