.NET 4.x Создать класс дерева, содержащего числа. - C#
Формулировка задачи:
Здравствуй programmer.
Я новичок в C# и только начинаю изучать его!
Не подскажите решение для задачи: Создать класс дерева, содержащего числа. Реализовать в этом классе функцию, определяющую количество листьев в дереве!?
Информация взята вот от сюда Создать класс дерева, содержащего числа. Реализовать в этом классе функцию, определяющую количество листьев в дереве
Подсказки
Листинг программы
- public class Tree
- {
- private Tree m_left, m_right;
- private int m_key;
- private int m_value;
- public Tree(int key, int value)
- {
- m_key = key;
- m_value = value;
- }
- public int getKey()
- {
- return m_key;
- }
- public int getValue()
- {
- return m_value;
- }
- public Tree getLeft()
- {
- return m_left;
- }
- public Tree getRight()
- {
- return m_right;
- }
- private void addLeft(int key, int value)
- {
- if (m_left == null)
- {
- m_left = new Tree(key, value);
- }
- else
- {
- m_left.add(key, value);
- }
- }
- private void addRight(int key, int value)
- {
- if (m_right == null)
- {
- m_right = new Tree(key, value);
- }
- else
- {
- m_right.add(key, value);
- }
- }
- public void add(int key, int value)
- {
- if (key < m_key)
- {
- addLeft(key, value);
- }
- else
- if (key > m_key)
- {
- addRight(key, value);
- }
- }
- }
- }
Alex_oo7
Листинг программы
- int counter = count(root); где root это твой корень.
- // counter это кол-во узлов
Листинг программы
- int count(Tree x){
- if(x == null){
- return 0;
- } else {
- return Tree_inorder(x.getRight()) + Tree_inorder(x.getLeft()) + 1;
- }
- }
Решение задачи: «.NET 4.x Создать класс дерева, содержащего числа.»
textual
Листинг программы
- var count = root.AllChilds.Where(c=>c.Count == 0).Count();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д