Answer:A depth first search of an arbitrary graph can be used to perform a traversal of a general graph. The strategy is as follows. A node s is picked as a start node and marked. An unmarked adjacent node to s is now selected and marked, becoming the new start node; possibly leaving the original start node with unexplored edges for the present. The search continues in the graph until the current path ends at a node with outdegree zero or at a node with all adjacent nodes already marked. Then the search returns to the last node which still has unmarked adjacent nodes and continues marking until all nodes are marked. Since adjacent nodes are needed during the traversal, the most efficient representation again is an adjacency list.