Javaで完全に構築された汎用Trieがあります。トライをトラバースして、各パスの完全な組み合わせをすべて取得しようとしています。たとえば、Trie に文字が含まれている場合、すべての単語の組み合わせが返されます。私の目的のために、各組み合わせのすべてのノードを配列に入れて返そうとしています。しかし、私は困惑しています。親/開始ノードに戻る前に、各子 (+ サブ子) を通過するトラバーサルのみを思いつきました (BST トラバーサルによく似ています)。ArrayList
各ノードの子を保持するためにを使用しています。少し混乱している場合は申し訳ありません。コード サンプルまたは疑似コードを提供していただければ幸いです。ありがとう。
編集
組み合わせとは、次のことを意味します。Trie<char>
次のような があったとします。
"null"
/ | \
a i t
/ /|\ \
t f m n o
返してほしい組み合わせは次のとおりです。
[a, t]
[i, f]
[i, m]
[i, n]
[t, o]
これらすべての配列/リストは、最後に返される 1 つの ArrayList に含めることができます。