Помогите с алгоритмом. Для произвольного графа найти хроматическое число и раскраску.
Michael_Rybak
9.12.2007 19:37
Ориентировочные размеры графа?
npl
9.12.2007 20:27
Граф произвольный.
Michael_Rybak
9.12.2007 20:34
Ну если произвольный - то без шансов. Общего полиномиального решения нет, насколько я знаю. Пробуй жадные подходы какие-нибудь, с итерационным приближением к оптимальному решению. Например, так.
npl
9.12.2007 21:14
А нет на Паскале?
Добавлено через 5 мин. Хотя бы для графа с несколькими вершинами.
Michael_Rybak
9.12.2007 21:37
Для графа с несколькими вершинами - полным перебором.
Кода у меня нет.
npl
9.12.2007 21:39
Дайте кто-нибудь ссылку, пожалуйста!
Michael_Rybak
9.12.2007 21:51
Может и сдать за тебя?
npl
9.12.2007 22:42
Сдавать не надо, дайте ссылку с описанием метода решения.
Michael_Rybak
9.12.2007 23:16
Пытаешься раскрасить в один цвет; если не получилось - в два; если не получилось - в три, и т.д.
Чтобы раскрасить в k цветов, используешь такую схему. Фиксируешь порядок обхода вершин. Идешь в первую вершину, даешь ей цвет 1. Идешь во вторую, и даешь ей такой наименьший цвет, который не вызовет конфликтов. Идешь в третью, и т.д. Если на очередном ходу цвет выбрать не получается, откатываешь к предыдущей вершине, и выбираешь для нее следующий цвет, который не вызовет конфликтов. Если и для нее возможные цвета кончились - откатываешь дальше, и т.д.
Если всем вершинам назначены цвета - задача решена.
Рекурсивная процедура будет выглядеть примерно так:
procedure visit(i: integer);
beginif i = n + 1then// решение найдено! выводим
elsebeginfor c := 1to k // k - количество цветов
if (ни одна из вершин, смежных с i, не покрашена в цвет с) then
color[i] := c;
visit(i + 1);
end;
end;
end;
npl
9.12.2007 23:31
Я так понял, что граф представляется в виде матрицы.
Добавлено через 3 мин. И там где решение найдено, нужно вывести матрицу?
Michael_Rybak
10.12.2007 0:36
да.
united pharmacy lasix no precrcr
17.09.2021 11:45
Mail Order Macrobid Visa Accepted Free Shipping
Edwardgramn
2.10.2021 20:55
Перед реализацией, все автомобили проходят предпродажную подготовку - полировку, химчистку, мойку, компьютерную и техническую диагностику. Мы сотрудничаем со многими ведущими банками России, поэтому вы сможете выбрать подходящие условия по кредитованию для себя.
finasteride 5mg without a prescr
21.12.2021 10:31
Cialis Compresse Prezzo
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.