Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2008, 16:33   #1
Raz0r
Пользователь
 
Регистрация: 06.11.2007
Сообщений: 47
По умолчанию Двоичные деревья

Помогите с задачей нахождения среднего арифметического самой длинной левой ветви дерева, а то никак не могу задачу доделать, само дерево построено и обход сделан, а дальше никак.
Raz0r вне форума Ответить с цитированием
Старый 30.03.2008, 14:08   #2
Professor Hubert
Пользователь
 
Аватар для Professor Hubert
 
Регистрация: 29.03.2008
Сообщений: 35
По умолчанию

Цитата:
Сообщение от Raz0r Посмотреть сообщение
Помогите с задачей нахождения среднего арифметического самой длинной левой ветви дерева, а то никак не могу задачу доделать, само дерево построено и обход сделан, а дальше никак.
Переведи! Среднее арифметическое - это число, получаемое делением суммы нескольких чисел на их число.
Что такое среднее арифметическое ветви?
Professor Hubert вне форума Ответить с цитированием
Старый 30.03.2008, 18:45   #3
Raz0r
Пользователь
 
Регистрация: 06.11.2007
Сообщений: 47
По умолчанию

Дословно. Из входной последовательности целых чисел построить дерево и определить среднее арифметическое элементов самой длинной ветви (если их несколько, то самой левой) дерева
Raz0r вне форума Ответить с цитированием
Старый 30.03.2008, 20:15   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну тогда (если Вы построили дерево и нашли самую длинную ветку) Вами сделано приблизительно 98% задания. Осталось просуммировать все элементы дерева, расположенные по то самому длинному пути и разделить их на число элементов в этом самом пути...
Вот только боюсь, что проблема у Вас как раз в том, как найти эту самую длинную ветку... ;-(
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.03.2008, 21:41   #5
Etlau
Пользователь
 
Аватар для Etlau
 
Регистрация: 30.03.2008
Сообщений: 23
По умолчанию

Помогите пожалуйста!
С помощью стека, описать нерекурсивную функцию, которая подсчитывает количество узлов на N-ом уровне непустого двоичного дерева.
Прошу очень сильно помочь))
В сущности, самое распространенное бегство всякого человека - бегство от самого себя.
Etlau вне форума Ответить с цитированием
Старый 31.03.2008, 14:49   #6
Raz0r
Пользователь
 
Регистрация: 06.11.2007
Сообщений: 47
По умолчанию

Etlau пиши в свою тему
Serge_Bliznykov как найти среднее арифметическое я вроде умею считать . А вот с нахождением самой длинной ветви вы правы, у меня проблемы. Не поможете?
Raz0r вне форума Ответить с цитированием
Старый 10.12.2011, 22:00   #7
sibguty
Пользователь
 
Аватар для sibguty
 
Регистрация: 09.12.2011
Сообщений: 13
По умолчанию

самая длинная ветка дерева-это его высота, у меня есть псевдокод:

p - указатель на корневую вершину

IF (p = NULL) высота:=0
ELSE высота:= 1 + max(высота(p->Left), высота(p->Right))
FI
sibguty вне форума Ответить с цитированием
Старый 11.12.2011, 10:32   #8
sibguty
Пользователь
 
Аватар для sibguty
 
Регистрация: 09.12.2011
Сообщений: 13
По умолчанию

вот сам код непосредственно, передаете в качестве фактического параметра указатель на корневую вершину, у меня все работает, пробуйте)
int hight_of_tree(struct Vertex *p)
{ int a,b;
if (p == NULL) return 0;
a = hight_of_tree(p->L);
b = hight_of_tree(p->R);
if (a>b) return (a + 1);
else return (b +1);
}

Последний раз редактировалось sibguty; 11.12.2011 в 10:37.
sibguty вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двоичные деревья. 3 задачки. Срочно rustam29 Фриланс 9 13.06.2009 18:02
Деревья Mitron Общие вопросы Delphi 5 01.02.2008 10:09
Двоичные и шестнадцатеричные числа Rembo Помощь студентам 9 13.11.2007 19:08
Как записать в com -порт или модем двоичные данные sergrom Win Api 10 25.06.2007 15:15