1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Бинарное Дерево.сумма Ключей В Узлах.

Тема в разделе "Свободное общение", создана пользователем Tony7161, 18 янв 2012.

  1. Tony7161

    Tony7161 Гость

    Репутация:
    0
    Здравствуйте.Столкнулся с такой проблемой.Дано дерево и определение "путь".Под "путем" понимается сумма ключей в узлах от корня до узла без сыновей.Например
    5
    / \
    8 9
    / \ \
    3 2 6
    1 путь 5+8+3=16
    2 путь 5+8+2=15
    3 путь 5+9+6=20
    требуется написать псевдокод для рекурсивного алгоритма.Функция получает дерево и некоторую сумму и возвращает true если в дереве есть путь равный этой сумме или false если такого пути нет.Буду очень благодарен за теоретическое обьяснение решения этой задачи.
     
  2. rrrFer

    rrrFer Гость

    Репутация:
    0
    ну поиск в глубину используй :)

    Код:
    f(tree(E,empty,empty),RS,S):-
    S = RS + E, !.
    f(tree(E,L,_),RS,S):-
    TS = RS + E,
    f( L, TS, S ).
    f(tree(E,_,R),RS,S):-
    TS = RS + E,
    f( R, TS, S ).
    не проверял, на прологе как-то так.
     
Загрузка...
Похожие Темы - Бинарное Дерево сумма
  1. Maestresa
    Ответов:
    2
    Просмотров:
    1.860
  2. newslayer
    Ответов:
    0
    Просмотров:
    1.174
  3. European
    Ответов:
    0
    Просмотров:
    2.118
  4. Hanja
    Ответов:
    0
    Просмотров:
    1.156
  5. MrSpoon
    Ответов:
    0
    Просмотров:
    1.131

Поделиться этой страницей