展开全部
方法是在dfs的过程中维护dfs的路径,到达叶子结点时将路径加入到答案中32313133353236313431303231363533e4b893e5b19e31333337393530,具体见代码的注释。
输入格式为:7 A
A B
C A
D B
E B
C F
C G
其中,第一行表示结点数量n和根结点编号,第[2..n + 1]行每行两个字符u和v,表示树边。import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {
static final int maxn = 1000;
int n; // 树的结点个数
char root; // 树的根
List> ans = new ArrayList>(); // 结果,存放所有路径
boolean[][] G = new boolean[maxn][maxn]; // 邻接矩阵
/**
* dfs
* @param u 当前到达的结点
* @param fa 当前结点的父节点
* @param path 根到fa的路径
*/