私は一連の文字列を持っています。これらのうち、2つ以上のグループが同じものを表すことがあります。これらのグループは、グループのメンバーがあれば、グループの他のメンバーを効率よく取り出すことができるように格納する必要があります。 交換可能な文字列を保持するためのデータ構造
だから、この初期セットを与えられた:["a","b1","b2","c1","c2","c3"]
結果構造が
["a",["b1","b2"],["c1","c2","c3"]]
のようなものになると
["b1","b2"]
を返す必要があります(「B」)を取得する必要があります。
この目的のための特定のデータ構造および/またはアルゴリズムはありますか?
EDIT: "b1"と "b2"は実際の文字列ではなく、2つが同じグループに属することを示しています。それ以外の場合、Trieは完璧にフィットします。
これは特定のプログラミング言語プログラミングの質問ですか?もしそうでなければ、これはコンピュータサイエンススタックエクスチェンジに属してもよく、ここではないかもしれません特定のプログラミングの質問と言葉を参照してくださいaccordinagly – alonisser
[disjoint-set forests](http://en.wikipedia.org/wiki/Disjoint-set_data_structure)のように聞こえますが、後方に... –
正確な問題は、現在あなたのグループは何ですか? –