Active Directory から組織図を作成するプロジェクトを書いています。プログラムに名前 (従業員) のリストを与えると、ルート ノードはそれらの従業員の最下位の共通マネージャーになります。これは、組織の実際のトップ マネージャーまたは部門マネージャーである可能性があり、名前によって異なります。
Active Directory マネージャーの属性を使用してマネージャー名を取得できます。現在、各従業員がマネージャーを取得して、一番上に到達して ArrayList を作成しています...次に、リストを比較して共通のマネージャーを特定する方法が必要です。List.contains() を使用して 2 人だけでこれを行いましたが、これは 2 人以上には拡張できません。ここに何か提案はありますか?
共通マネージャーをルート ノードとしてツリー データ構造を作成したいと考えています。このツリー データ構造には、共通マネージャーの下にあるリスト内のすべてのユーザーとその親子関係が含まれています。
これに適したデータ構造はどれですか?