サブ文字列とその出現回数の両方を文字列に格納するトライを実装しています。私のトライの各ノードには、メインノードのサブノードを格納するchildrenというマップがあります。
私の問題は、最終的にはそれらのサブノードに独自のサブノードがあり、いわば「マップ内のマップ内のマップ...」からデータを取得する方法がわからないことです。
これが私がこれまでに持っているものです:
private class TrieNode
{
private T data; //will hold the substring
int count; //how many occurrences of it were in the string
private Map<TrieNode, Integer> children; //will hold subnodes
private boolean isWord; //marks the end of a word if a substring is the last substring of a String
private TrieNode(T data)
{
this.data = data;
count = 1;
children = new HashMap<TrieNode, Integer>();
isWord = false;
}
}
サブノードからデータを取得するにはどうすればよいですか?サブノードの下に他のサブノードがある可能性がありますか?
PS十分に明確に説明できなかった場合は、お詫び申し上げます。再帰に問題があります。ありがとう。