/** * Returns a list of vertices that are the neighbors of a specified vertex. If the graph is a * multigraph vertices may appear more than once in the returned list. * * <p> * The method uses {@link Graph#edgesOf(Object)} to traverse the graph. * * @param g the graph to look for neighbors in * @param vertex the vertex to get the neighbors of * @param <V> the graph vertex type * @param <E> the graph edge type * * @return a list of the vertices that are the neighbors of the specified vertex. */ public static List <V> neighborListOf <V, E>(Graph <V, E> g, V vertex) { List <V> neighbors = new List <V>(); foreach (E e in g.edgesOf(vertex)) { neighbors.Add(getOppositeVertex(g, e, vertex)); } return(neighbors); }