Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Срочно нужна помощь:реализация графа связанными списками  (Прочитано 9537 раз)
0 Пользователей и 1 Гость смотрят эту тему.
pervokyrsnik
Гость
« : 17-04-2005 06:03 » 

Пожалуйста помогите реализовать представление графа с помощью связанных списков, но программа должна быть написана на С. Надо создать списки смежных вершин и массив указателей на списки смежных вершин графа. Не получается массив указателей на структуры.
struct cell
{
   cell* next;//ссылка на следующую запись списка
   char* name;//
   int number;
   int weight;
};
struct headtail
{
   cell* head;//ссылка на первую запись списка
   cell* tail;//ссылка на последнюю запись списка
};

struct massiv
{
   headtail *spisok;//указатель на список смежных вершин для данной вершины
   char* name;//
   int number;
};
Записан
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 18-04-2005 10:26 » 

Код:
struct list_of_vertexes;

/* Вершина графа: данные + список соседей */
struct vertex {
    /* список вершин, соседних с данной */
    struct list_of_vertexes * list_of_neighbors;
    /* данные, связанные с вершиной */
};

/* Список вершин.
 * Поле next указывает на следующую вершину в списке.
 * Последняя вершина в списке в указателе next содержит NULL. */
struct list_of_vertexes {
    struct list_of_vertexes * next;
    struct vertex * vertex;
};

/* Граф задаётся списком своих вершин.
 */
struct graph {
    struct list_of_vertexes * vertexes;
};

В предложенном примере окрестность узла графа задаётся в самом узле. У такого решения есть как плюсы, так и минусы.
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
pervokyrsnik
Гость
« Ответ #2 : 18-04-2005 15:52 » new

Спасибо большое,выручили.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines