Consider a directed graph that has n nodes and e edges, where 0 ≤ e ≤ n2.
a. What is the time complexity, using Big Oh notation, for each of the following operations when an adjacency matrix is used to represent the graph?
• Testing whether two vertices are joined by an edge
• Finding the successors of a given vertex
• Finding the predecessors of a given vertex
b. Repeat part a, but assume that the graph uses an adjacency list in its implementation instead of an adjacency matrix.