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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2017, 17:43   #1
Абсалютдин
Пользователь
 
Регистрация: 11.03.2017
Сообщений: 10
Смущение Как создать граф в с++? Как сделать поиск минимального пути?

Всем здравствуйте, одно из заданий в моей курсовой создать произвольный граф и найти минимальный путь от конечной точки до начальной. И также написать программу ( код ) для всего этого.
Пути от одной любой точки к другой проходят через ребра "e", которым также надо присвоить любые числа. и Вот по этим ребрам и будет вычислять минимальный путь от начала к концу!
Главные вопросы:
1) КАК СОЗДАТЬ ГРАФ В С++(графически изображать в самой программе не нужно)
2) Как сделать этот поиск минимального пути?
Хотя бы 1) помогите
Абсалютдин вне форума Ответить с цитированием
Старый 12.03.2017, 17:49   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

https://ru.wikipedia.org/wiki/%D0%93...B8.D0.BA.D0.B5
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 12.03.2017, 20:15   #3
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Я могу ошибаться, но мне кажется что тебе нужны "списки в с++". Типа такого:
Код:
struct graf
{
    int key;
    graf *next;
};
Ну вот пример (обрати внимание на "узлы" и "связи между узлами"):

0.jpg

Да, я понимаю, что когда в структуре присутствует только один указатель ("graf *next;") это мало кому интересно, потому что кроме змейки больше ничего и не реализовать. Но представь себе что станет возможным с 2-мя указателями, типа такого:
Код:
struct graf
{
    int key;
    graf *next;
    graf *pref;
};
Можно будет реализовать, ну например, такой граф:

1.jpg

... вот пример с 26 ссылками (26- это количество букв в английском языке):

3.jpg

я понимаю, что задачи "построить алфавит" и "граф" разные (хотя бы по тому что в графе могут быть кольца, а в алфавите их не может быть в принципе), но принцип построения один и тот же: создаём узел и определяемся со связями (интегрируем этот узел в общую структуру графа)...

___________________________________ ____________________
p.s.1: определись сколько нужно ссылок (максимально количество связи у самой разветвлённой развязки в графе): 1,2,3....
p.s.2: информацию о списках ищи в интернете:

2.jpg

Последний раз редактировалось ura_111; 12.03.2017 в 20:22.
ura_111 вне форума Ответить с цитированием
Старый 13.03.2017, 00:49   #4
Абсалютдин
Пользователь
 
Регистрация: 11.03.2017
Сообщений: 10
По умолчанию

Благодарю друг, как раз списки и структуры по программированию проходим! попробую! Только граф намного сложнее должен быть! и как обозначить и присвоить ребрам графа цену!?? Ведь в задании программа после введенных данных должна будет найти минимальный путь, как раз по этим присвоенным ценам! блин очень запутанно объясняю, простите))

Последний раз редактировалось Абсалютдин; 13.03.2017 в 00:52.
Абсалютдин вне форума Ответить с цитированием
Старый 13.03.2017, 00:58   #5
Абсалютдин
Пользователь
 
Регистрация: 11.03.2017
Сообщений: 10
По умолчанию

[IMG]file:///C:/Users/ADMIN/Desktop/Безымянный.png[/IMG]
Абсалютдин вне форума Ответить с цитированием
Старый 13.03.2017, 01:11   #6
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

картинка только в
jpeg
прокатывает.
ura_111 вне форума Ответить с цитированием
Старый 13.03.2017, 01:14   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Да давай уж сразу C:/Users/ADMIN/Desktop/пароли.txt )

Для загрузки картинок есть кнопка в расширенной форме ответа.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 13.03.2017, 01:24   #8
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Я тут порыскал (на форуме) и заметил, что граф делают и на основе обычного массива:

10.jpg

11.jpg


Ты не думал об этом?
Типа такого:

12.jpg

Последний раз редактировалось ura_111; 13.03.2017 в 01:34.
ura_111 вне форума Ответить с цитированием
Старый 13.03.2017, 01:27   #9
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

А что насчёт списков - можно сделать два вида структур: один для узлов другой для ветвей....
А нужны ли узлы вообще?
Там будет хоть какая-нибудь информация храниться?
ura_111 вне форума Ответить с цитированием
Старый 14.03.2017, 00:54   #10
Абсалютдин
Пользователь
 
Регистрация: 11.03.2017
Сообщений: 10
По умолчанию вот примерно вот такого типа граф!

Вот е1,е2,е3.... - получается узлы соединяющие все эти вершины. и пользователь должен будет в начале программы вводить ( присвоить ) каждому узлу опреленную цену перехода с одной точки на другую. потом дале с этой накопленной суммой идти дальше по вершинам пока не придет от вершины 7 до вершины 1( в данном случае) Программа должна вывести и показать маршрут,который является самым минимальным (по итоговой сумме) - это все дискретная математика)
Изображения
Тип файла: png Безымянный.png (12.7 Кб, 126 просмотров)
Абсалютдин вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск минимального и максимального пути в графе VallMorgan Общие вопросы по Java, Java SE, Kotlin 0 09.01.2017 20:21
не знаю как решить...поиск минимального элемента в заданной строке покемон21 Паскаль, Turbo Pascal, PascalABC.NET 4 25.12.2013 15:01
Как создать эскиз UserControl во всплывающем окне? Сделать всплывающие окна, как в Windows 7 AnutkaSolnce Windows Forms 1 09.06.2011 07:30
Поиск минимального и максимального пути в графе!!!! OZZY_91 Помощь студентам 1 18.11.2009 13:20
Поиск пути, ...как подключить модуль? Лубышев Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 25.09.2009 15:49