0

Active Directory から組織図を作成するプロジェクトを書いています。プログラムに名前 (従業員) のリストを与えると、ルート ノードはそれらの従業員の最下位の共通マネージャーになります。これは、組織の実際のトップ マネージャーまたは部門マネージャーである可能性があり、名前によって異なります。

Active Directory マネージャーの属性を使用してマネージャー名を取得できます。現在、各従業員がマネージャーを取得して、一番上に到達して ArrayList を作成しています...次に、リストを比較して共通のマネージャーを特定する方法が必要です。List.contains() を使用して 2 人だけでこれを行いましたが、これは 2 人以上には拡張できません。ここに何か提案はありますか?

共通マネージャーをルート ノードとしてツリー データ構造を作成したいと考えています。このツリー データ構造には、共通マネージャーの下にあるリスト内のすべてのユーザーとその親子関係が含まれています。

これに適したデータ構造はどれですか?

4

1 に答える 1

0

これがやり過ぎかどうかはわかりませんが、個人的には組み込みの Neo4j データベースを使用することをお勧めします。このタイプの構造とクエリには非常に適しています。非常にスケーラブルで高速です。

于 2012-10-18T16:50:11.080 に答える