IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Бинарные деревья, Равенство деревеьв, дерево бинарного поиска
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 3
Пол: Женский

Репутация: -  0  +


Привет, ребята!
Совсем замучилась с двумя задачами.
1) описать процедуру, проверяющую на равенство два дерева (деревья равны, если ключи и записи вершин одного дерева соответственно равны ключам и вершинам второго);
2) на стоянке стоят автобомили с номерами 1212,3451,7694,4512,4352,8732,7326,2350,4536,2387,5746,6776,4316,1324; для сатистики нужно составить список автомобилей с такими номерами, что сумма двух первых цифр равна сумме двух послдних, так, чтобы каждый следующий номер был меньше предыдущего (нужно воспользоваться деревом бинарного поиска).

Знаю, что надо было попробовать решать самой, но преподавателем совершенно не были освещены эти темы blink.gif Могу только проводить над деревьями простейшие операции, а в этом полный ноль...

Plz, помогите rolleyes.gif
Заранее спасибо.

Сообщение отредактировано: zmt -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
описать процедуру, проверяющую на равенство два дерева
Процедуру? Функцию я делал вот тут:
деревья

Процедуру - не вижу смысла, результат возвращать все равно надо...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 3
Пол: Женский

Репутация: -  0  +


Volvo, спасибо!
Теперь надо попробовать убедить препода в том, что тут удобнее работать с функцией... Слишком уж она упрямая...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
надо попробовать убедить препода в том, что тут удобнее работать с функцией
Не будет убеждаться - сделай процедурой smile.gif
procedure isEqual(var equal: boolean; p1, p2: ttree);
var b_left, b_right: boolean;
begin
if (p1 = nil) and (p2 = nil) then equal := true
else if (p1<>nil) and (p2<>nil)
then begin
isEqual(b_left, p1^.left, p2^.left);
isEqual(b_right, p1^.right, p2^.right);
equal := (p1^.data = p2^.data) and b_left and b_right
end
else equal := false
end;
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 3
Пол: Женский

Репутация: -  0  +


Volvo, ещё раз спасибо smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.10.2020 18:59
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name