|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
|
Поиск циклов в графе. Поиск центра взвешенного графа26.08.2013, 23:31. Показов 12853. Ответов 22
Метки нет (Все метки)
В интернете, к сожалению, по этим вопросам не так уж много нашел. Можете посоветовать статью/пособие, где было бы подробно об этом написано?
0
|
|
| 26.08.2013, 23:31 | |
|
Ответы с готовыми решениями:
22
Поиск циклов в графе Поиск Ф-циклов в графе Поиск циклов в ориентированном графе |
|
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 160
|
|
| 27.08.2013, 01:52 | |
|
что значит поиск циклов? найти их количество? найти 1/все маршрут/ы? просто ответить: есть ли цикл в графе?
0
|
|
|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
||
| 27.08.2013, 10:03 [ТС] | ||
|
Учитывая, что за первый курс - да. Скорее всего просто есть/нету.
0
|
||
|
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 160
|
||
| 27.08.2013, 10:16 | ||
|
или поиск в глубину и если доходишь до вершины с которой начал, то true Добавлено через 8 минут так стоп, вопрос экзаменационный, а конспекты какие-нибудь? методы? должен же быть какой-то источник теории
0
|
||
|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
|
| 27.08.2013, 10:22 [ТС] | |
|
Честно говоря, смутно себе представляю, как именно это сделать. Что из себя представляет этот волновой метод?
Теории никакой нет. Т.к. я недавно перевелся. Дали билеты в зубы - сказали что бы за лето выучил. Как-то так.
0
|
|
|
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 160
|
||||||
| 27.08.2013, 10:49 | ||||||
|
ну так тут сложновато на форуме объяснить, да и объяснять я толком не умею =D
вот, блин, нашёл свои графы, здесь отвечает есть-ли путь из 1-ой вершины в 2-ую, правда что-то по виду она чуть не доработана и она на паскале...)
1
|
||||||
|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
|
| 27.08.2013, 10:58 [ТС] | |
|
Паскаль я знаю. Ладно, разберусь, если 100% рабочее.
0
|
|
|
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 160
|
|
| 27.08.2013, 11:00 | |
|
можно ещё вот как сделать, кстати, ты даже не сказал ор граф или неор?, можно брать отсеивать "висячие ветки", т.е. те, которые имеют только 1 "соседа", так бегаешь по графу пока они есть, т.е. пробежал по графу, встретил такую ветку выбросил её, пошёл дальше, прошёл все вершины, снова пошёл, так проходишь пока не уйдут все вершины или не останется висячих, и если осталось больше 2 вершин, то циклу есть место, но я точно не уверен, это стоило бы тщательно на листке расписать, на каких-нибудь сложных графах и частных случаях
0
|
|
|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
|
| 27.08.2013, 11:05 [ТС] | |
|
Орграф. В неориентированном проще все гораздо. Это понятно. Можно просто запустить поиск в ширину + сделать список, куда бы заносились уже пройденные вершины. Если при рассмотрении очередной вершины натыкаемся на пройденную - цикл.
0
|
|
|
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 160
|
|
| 27.08.2013, 11:23 | |
|
закончились деньги на интернете, а я там матрицы начал писать...
ну да, только не спмсок, а индексный массив, или как там его, в общем, посетил 4 вершину ставишь в этом массиве 1 в 4 ячейку и тд
0
|
|
|
163 / 104 / 14
Регистрация: 17.10.2012
Сообщений: 488
|
|
| 27.08.2013, 12:32 | |
|
Если я правильно понял по циклам, то цикл эйлера подойдет:
http://ru.wikipedia.org/wiki/Эйлеров_цикл Там и алгоритм есть
0
|
|
|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
||
| 27.08.2013, 16:29 [ТС] | ||
|
procedure find_all_cycles (v) var массив cycles 1. пока есть цикл, проходящий через v, находим его... (Как?)
0
|
||
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|||||||
| 27.08.2013, 16:52 | |||||||
|
вот так провряется наличие циклов в орграфе:
1
|
|||||||
|
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
|
|
| 27.08.2013, 16:56 | |
|
поищите в интернете. Все есть.
0
|
|
|
163 / 104 / 14
Регистрация: 17.10.2012
Сообщений: 488
|
|
| 27.08.2013, 17:22 | |
|
_Колючий_, есть цикл гамильтона - проход по всем узлам. Но для него нет алгоритма - только перебор.
0
|
|
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|
| 27.08.2013, 17:51 | |
|
насчет центра взвешенного графа. вот здесь: http://ru.wikipedia.org/wiki/Г... рии_графов всё описано просто и понятно. как я понял надо найти кратчайшие пути между всеми парами вершин, т.е. составить матрицу кратчайших путей. затем посчитать максимальное значение в каждой строке матрицы (!!в орграфе не в строках а в столбцах, т.к. в статье сказано кратчайший путь В каждую вершину, а алгоритмы обычно ищут кратчайшие пути ИЗ каждой вершины). и затем найти минимальное из этих максимальных значений. та вершина, которая имеет это минимальное значение и есть центр графа.
могу ошибаться, но я так это понял. Добавлено через 8 минут
0
|
|
|
163 / 104 / 14
Регистрация: 17.10.2012
Сообщений: 488
|
|
| 27.08.2013, 17:53 | |
|
ya_noob, есть метод Флойда-Уоршелла, который за O(n^3) даёт пути из всех вершин во все остальные.
А циклы в графе надо смотреть либо Эйлера, либо Гамильтона. Рекомендую книгу Кормена по алгоритмам - там всё просто и понятно, с псевдокодами и иллюстрациями.
1
|
|
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|||||
| 27.08.2013, 18:14 | |||||
|
Добавлено через 2 минуты
0
|
|||||
|
415 / 411 / 95
Регистрация: 06.10.2011
Сообщений: 832
|
|
| 27.08.2013, 18:24 | |
|
iRomul, есть. Нейронные сети, муравьиные алгоритмы, метод ветвей и границ и другие.
Первые два - дают приближенные результаты, третий - точные.
0
|
|
|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
|||
| 28.08.2013, 00:01 [ТС] | |||
|
Не по теме: За лето я много чего нашел. А что касается ответов на те вопросы, которые я не нашел/не понял, то их я пытаюсь прояснить здесь. Ведь для этого следует обращаться на форумы? Верно ? ;)
0
|
|||
| 28.08.2013, 00:01 | |
|
Помогаю со студенческими работами здесь
20
Поиск отрицательых циклов в графе Поиск отрицательных циклов в графе Поиск всех циклов в неориентированном графе. поиск центра графа Реализация матрицы смежности и инцидентности, поиск циклов в графе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|