0
私はlinkdelistのlinkedlistsで作られたデータ構造を持っています。例えばLinkedListsと再帰とのLinkedLists
:
[ [A,B,C] [D,E,F] [A,B] [E,F] ]
私の目標は、全体の構造に含まれることはありませんそれらのlinkedlistsを見つけることです。ただし、[A、B、C]と[D、E、F]はそれぞれ[A、B]と[E、F]を含んでいるので決して他人には含まれません。 私はツリーを扱っているので再帰を使う必要があるので、これらの特徴を持つリンクリストを見つけると、私は自分の関数を思い出す必要があります。
私の実装です:
private void treeGen(Node<LinkedList<String>> parent, LinkedList<LinkedList<String>> partitions) {
for (int i=0; i<partitions.size();i++) {
for(int j=0; i<partitions.size();i++)
{
//the condition discussed so far
if(!partitions.get(i).containsAll(partitions.get(j)) && parent.getData().containsAll(partitions.get(j)))
{
//create node
Node<LinkedList<String>> child = new Node<LinkedList<String>>();
//set value
child.setData(partitions.get(i));
//child of parent node
parent.addChild(child);
//new parent node, recursion
treeGen(child, partitions);
}
else
{
//do nothing
}
}
}
私はすべての可能な組み合わせを比較するにもかかわらず、私は木にいくつかのノードを欠場。 リンクされたリストに関連する問題がありますか?
ここに「含む」と正確には何を意味していますか? – kkaosninja
ようこそスタックオーバーフロー!デバッガの使い方を学ぶ必要があるようです。 [補完的なデバッグ手法](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)にご協力ください。その後も問題が残っている場合は、もう少し詳しくお聞かせください。 –