WARNING! Read the conditions for the problems in this set very carefully!
Assume for an undirected graph with numV vertices and numE edges that a vertex index requires vertB bytes, a pointer requires pointerB bytes, and that edge weights require edgeB bytes. Since the graph is undirected, each undirected edge is represented by two directed edges. Calculate the byte requirements for an adjacency list.
ANS
Adjacency list has an array (of size |V|) which points to a list of edges.
Every edge appears twice on the list (the graph is undirected, so we need the directed edge in each direction). And for each edge there has to be a vertex ID, a weight, and a pointer to the next edge.
(V * pointer) + (2 * E * (vertex_index + edge_weight + pointer)) bytes = ANS