特定の問題をどのように表現するかを決めるのにかなりの問題があります。基本的に、から指定された番号のリスト/ベクトルが必要になりますargs[1]
。それらのそれぞれは0からいくつかまで持っていargs[2]
ます。
最初の要素内の要素から可能なすべての引数の組み合わせを検索するアルゴリズムを作成する必要があります。
例として:
1 -> 3 5
2 -> 1 3 4 5
3 -> 2
4 -> 2 5 1
5 -> 1 3 4
この例から、パスのすべての組み合わせを生成する必要があります。たとえば、1から3または5に移動でき、同じミニパスに戻ることはできないため、理解する必要があると思います。すべてのパスを完全に検索するための再帰的な方法。
私の最初の試みは、各要素のarraylistを使用して1〜5のベクトルを作成することでしたが、リストを使用して値を初期化してアクセスするのに問題があります。
for (int i=0; i < total; i++) {
matrix[i] = new ArrayList<int>(total);
}
for (int i=0; i < total_paths; i++) {
matrix[Integer.parseInt(args[i])].add(Integer.parseInt(args[i]));
}
どんな提案でも大歓迎です。