1 / 1 / 0
Регистрация: 22.05.2008
Сообщений: 4
1

Бинарные деревья: найти минимум, распечатать элементы дерева

22.05.2008, 20:16. Показов 6239. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
1. Написать функцию, которая находит наименьший элемент дерева.

2. Написать процедуру, которая выводит на экран (по одному разу) все вершины дерева.
HELP ME!!!!..а то чото не получается..
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.05.2008, 20:16
Ответы с готовыми решениями:

Бинарные деревья. Напечатать все элементы дерева Т по уровням
Всем привет. Помогите написать программу или хотя бы функцию, условие следующее: Напечатать все...

Бинарные деревья, вывод дерева на экран
Создание бинарное дерево, помогите с выводом дерева на экран #include <iostream> #include...

Бинарные деревья. Нахождение высоты дерева
Добрый день. Помогите пожалуйста с задачами. 1) Используя бинарное дерево поиска,которое должно...

Бинарные деревья, глубина (высота) дерева
Есть дерево, состоящее из целых чисел , читаемых из файла. С выводом и нахождением высоты дерева...

4
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
22.05.2008, 21:02 2
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
type
    PItem = ^TItem;
    TItem = packed record
        Left  :PItem;
        Right :PItem;
        Data  :Integer;
    end;
...
// функция для поиска минимума
function FindMin(where:PItem):PItem;
var lMin:Integer;
    procedure DoFind(p:PItem);
    begin
        if p<>nil then begin
            if p^.Data<lMin then begin
                lMin := p^.Data;
                result := p;
            end;
            DoFind(p^.Left);
            DoFind(p^.Right);
        end;
    end;
begin
    if where=nil then
        result := nil
    else begin
        lMin := where^.Data;
        result := where;
        DoFind(where);
    end;
end;
...
//процедура для вывода дерева
procedure PrintTree(pTree:PItem);
begin
    if pTree<>nil then begin
        Memo1.Lines.Add(IntToStr(pTree^.Data)); //куда выводить-то?
        PrintTree(pTree^.Left);
        PrintTree(pTree^.Right);
    end;
end;
...
//создаем дерево pTree
PrintTree(pTree);  //распечатали
pMin := FindMin(pTree);  //ищем...
if pMin=nil then begin
    //дерево пустое
end else begin
    //нашли минимум pMin
end;
1
1 / 1 / 0
Регистрация: 22.05.2008
Сообщений: 4
22.05.2008, 21:21  [ТС] 3
пасибо=)))а мона еще вторую..если не ссложно
0
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
22.05.2008, 21:33 4
Процедура PrintTree как раз этим и должна заниматься.
0
1 / 1 / 0
Регистрация: 22.05.2008
Сообщений: 4
22.05.2008, 21:35  [ТС] 5
спасибо
0
22.05.2008, 21:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2008, 21:35
Помогаю со студенческими работами здесь

Распечатать, посчитать среднее арифметическое, преобразовать в дерево поиска [Бинарные деревья]
Дано идеально сбалансированное дерево. Не выводиться дерево:(... Не понимаю как пройтись по...

Бинарные деревья: выделить метку вершины дерева, имеющую наибольшее число вхождений
Добрый день. Помогите, пожалуйста, написать программу на Haskell. Выделить метку вершины...

Бинарные деревья. Вывод потомков для каждого из узлов бинарного дерева поиска
Здравствуйте, уважаемые форумчане! Продолжая изучать бинарные деревья, решил подумать о выгодности...

Бинарные деревья. Рекурсивный алгоритм обработки (Преобразование дерева исключением всех его листьев.)
Прошу подсказать текст программы


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru