array of edges, ADL & ADM
===

I apologize if this question has been asked before, but I cant find an "absolute" answer to it. Background; I am trying to make an implementation of a graph and a path finding algorithm. This is connected to my studies, but not homework. 

I will have 1 architect class/object that communicates with user and controls in a switch-link manner how the graph information should be stored and processed. I therefore have declared 3 graph types (ADM, ADL and edge list), which inherits common features from one of them. So the architect-object will initiate an object of one of these classes based on conditions and user input. Each graph type will have a traveler object that uses the graph as template for traversing (therefore 3 traveler classes is declared too), and tests if it is a path between two user given nodes. The most important condition is therefore the one that enables the architect to choose between an ADM, ADL or edge list, based on user given edge-numbers and number of nodes. The graph will be generated randomly either using uniform distribution or gauss curve. I see that graph density can be a way of deciding between ADM or ADL, where ADM should be poor in a low density graph in terms of space, to find if v is isolated and to find a path between v and u, while ADL should be better for this case. list of edges seems to be similar to ADL in performance (to me) - in what cases would list of edges be better than ADL given a random graph and the condition needs to be connected to edges and vertices ratio/features? 