|
4 / 4 / 3
Регистрация: 05.08.2012
Сообщений: 135
|
|
Поиск циклов в графе. Поиск центра взвешенного графа26.08.2013, 23:31. Показов 12861. Ответов 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
Поиск отрицательых циклов в графе Поиск отрицательных циклов в графе Поиск всех циклов в неориентированном графе. поиск центра графа Реализация матрицы смежности и инцидентности, поиск циклов в графе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|