Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Graph 
:(
    Опции темы
sol78
Дата 24.7.2008, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 366
Регистрация: 7.7.2007

Репутация: 1
Всего: 0



Нужно спроектировать Граф. 
Который состоит из Element, Link, Weight.
Подскажите плз, хороший алгоритм, удобный в реализации(желательно без матрицы).
И как его (алгоритм) лучше реализовать, с точки зрения дизайна? 
PM MAIL   Вверх
jonie
Дата 24.7.2008, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 15
Всего: 118



тут обсуждаются проблемы с языком С++. проектирование в другом разделе.
возьмите исходники нейросетевых библиотек, там все это уже реализовано.... да и чистые графовые либы тоже имеются...

и чем плоха матрица (например смежности)? матрица легко опишет все связи, и займет минимум места. ну а веса связей можно хранить в ней же.

Это сообщение отредактировал(а) jonie - 24.7.2008, 20:20


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
anatox91
Дата 24.7.2008, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист-самоучка
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 12.1.2008
Где: ++Украина.Крым++

Репутация: нет
Всего: 13





--------------------

The code is the design ©

Sony VAIO VGN-FW480J

user posted image
PM MAIL ICQ   Вверх
Ulysses4j
Дата 24.7.2008, 20:44 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 6.6.2007
Где: Ростов-на-Дону

Репутация: 4
Всего: 10



Цитата(anatox91 @  24.7.2008,  21:33 Найти цитируемый пост)
Boost Graph Library

А еще лучше, наверное, посмотреть книжку по этой библиотеке на русском языке (она вроде бы вполне гуглабельна). Вообще, реализация графов это задача, которая имеет один из самых высоких коэффициентов по соотношению реальная сложность/кажущаяся простота. Так что будьте осторожны smile

Это сообщение отредактировал(а) Ulysses4j - 26.7.2008, 12:59


--------------------
Communication is critical to the job of a programmer.
C. Jazdzewski. Fatherly Advice To New Programmers
PM MAIL WWW   Вверх
sol78
Дата 28.7.2008, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 366
Регистрация: 7.7.2007

Репутация: 1
Всего: 0



Код

#ifndef _GRAPHO_
#define _GRAPHO_

#include <iostream>
#include <vector>
#include <set>
#include <string>

using namespace std;

template <class T, class W > class grapho
{
private:

    template < class T, class W > class element;

    template < class T, class W > struct link
    {
        element< T, W > *    m_source;
        element< T, W > *    m_destination;
        W                    m_weight;
    };

    template < class T, class W > struct element
    {
        vector< link< T, W > >*    m_destinations;
        T node;
    };

    string m_name;

    set< element < W, T > >    m_elements;
    set< link < W, T > >    m_links;

public:
    grapho(char* name):m_name(name)
    {}

};

#endif


Вот наметки графа, я пошла по пути навороченного Линкед Листа.
Может будут какието соображениыа по этому поводу?
PM MAIL   Вверх
Alek86
Дата 28.7.2008, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: 21
Всего: 25



sol78, ты читаешь, что другие иногда в твоей теме пишут? smile
если тебе нужно самой спроектировать граф, то лучше задавать вопросы в соотв. разделе (и не типа "спроектируйте-ка мне такую штуку")
если же просто нужен граф, то тебе ужен посоветовали обратить внимание на Boost Graph Library


--------------------
user posted image    user posted image
PM MAIL   Вверх
Ulysses4j
Дата 28.7.2008, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 6.6.2007
Где: Ростов-на-Дону

Репутация: 4
Всего: 10



sol78, вы бы попытались на человеческом языке разъяснить основные архитектурные решения в вашей реализации. Комментарии хотя бы в коде сделали...


--------------------
Communication is critical to the job of a programmer.
C. Jazdzewski. Fatherly Advice To New Programmers
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0515 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.