Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Нахождение наименьшего и наибольшего связного куска в графе

Автор: klik1602 14.06.2011 23:05

Поиском в глубину (нерекурсивный метод) нахожу количество связанных частей в графе, но преподаватель требует, чтобы ещё указывались какой из них наименьший, а какой наибольший. Помогите, подскажите как их найти, буду очень благодарна)

Автор: Lapp 15.06.2011 3:38

Цитата(klik1602 @ 14.06.2011 20:05) *
Поиском в глубину (нерекурсивный метод) нахожу количество связанных частей в графе, но преподаватель требует, чтобы ещё указывались какой из них наименьший, а какой наибольший. Помогите, подскажите как их найти, буду очень благодарна)

Гм. Просто заведи счетчик и попутно с поиском (например, при перекрашивании вершины) увеличивай его. Также, заведи две переменные, max и min, инициализируй одну нулем, другую максимальным возможным значением. Когда закончишь поиск на очередном связном куске, сравнивай max и min с текущим размером и обновляй их, если нужно. Единственное, что я тут не совсем понимаю, это как идентифицировать связные куски.. Можно это делать по любому принадлежащему элементу, но этот метод сильно неоднозначен, будет трудно сравнивать результаты.

Автор: klik1602 19.06.2011 18:08

спасибо большое за помощь)) всё получилось)) осталось ток закрасить наименьший и наибольший связные куски разными цветами и всё отлично))