Сравнить два бинарных дерева на изоморфизм - Prolog
Формулировка задачи:
Как должна работать эта программа?Что подавать на вход?
Сравнить 2 дерева на изоморфизм
Решение задачи: «Сравнить два бинарных дерева на изоморфизм»
textual
Листинг программы
T1 = tree(1,tree(2,tree(3,tree(4,void,void),void),tree(5,void,void)),tree(6,tree(7,void,void),tree(8,void,void))),
T2 = tree(1,tree(2,tree(3,tree(4,void,void),void),tree(5,void,void)),tree(6,tree(7,void,void),tree(8,void,void))),
isotree(T1, T2),
!
write("2 дерева изоморфны"), nl; % <----- тут точка с запятой, конец ветки, важно
write("2 дерева НЕ изоморфны"), nl.
Объяснение кода листинга программы
- Создаются два бинарных дерева: T1 и T2.
- Функция isotree(T1, T2) сравнивает деревья T1 и T2 на изоморфизм.
- Если деревья изоморфны, выводится сообщение
2 дерева изоморфны, если нет -2 дерева НЕ изоморфны.