Организовать поиск и печать ветвей генеалогического древа с помощью обхода графа в «глубину» - C#
Формулировка задачи:
Генеалогическое дерево некоторого рода представлено графом не более 12 вершин. Узел каждой вершины графа дополнительно включает пол представителя рода. Организовать поиск и печать всех особ женского пола с помощью обхода графа в «глубину».
код в си шарп
Решение задачи: «Организовать поиск и печать ветвей генеалогического древа с помощью обхода графа в «глубину»»
textual
Листинг программы
- class Tree
- {
- public string Pol = null; //w false - m
- public string Name = null;
- public Tree[] Next = null;
- }
- static void Search(Tree tree)
- {
- if (tree.Pol.ToUpper().Trim() == "W") Console.WriteLine(tree.Name);
- if (tree.Next != null) foreach (var _ in tree.Next) Search(_);
- }
- static void Main(string[] args)
- {
- //init - до 12 вершин сам будешь инициализировать
- Tree tree = new Tree
- {
- Pol = "W",
- Name = "Olga",
- Next = new[] {
- new Tree{ Pol="M", Name="Jan", Next=null},
- new Tree{ Pol="W",Name="Janna", Next=new[]{new Tree{ Pol="W",Name="Sandra", Next=new Tree[0]}}},
- new Tree{ Pol="M", Name="Arnold",Next=new[]{
- new Tree{ Pol="W",Name="Angela", Next=null},
- new Tree{ Pol="W", Name="Pamela",Next=new[]{new Tree{ Pol="M", Name="Jim",Next=null}}}
- }
- }
- }
- };
- Search(tree);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д