import org.omg.CORBA.PUBLIC_MEMBER;
import java.util.*;
public class Recursion4 {
/**
* 深度优先搜索,使用递归
*
* @param graphNode
* @param visited
*/
public void dfs(GraphNode graphNode, List<GraphNode> visited) {
if (visited.contains(graphNode)) {
return;
}
//递归,不能new的对象可以放在函数参数中
//此时需要把已遍历的点存储起来,需要有个集合,可是递归方法中不能new集合,所以可以放在函数的参数中
visited.add(graphNode);
System.out.print(graphNode.label + " ");
for (int i = 0; i < graphNode.edgeList.size(); i++) {
dfs(graphNode.edgeList.get(i).getRightNode(), visited);
//System.out.println("当前节点值:" +