Форум программистов, компьютерный форум CyberForum.ru

Подскажите как написать такое дерево (или БД) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не видит конструктор http://www.cyberforum.ru/cpp-beginners/thread928740.html
Приветсвую всех! В общем у меня небольшая проблемка, с которой собственными силами разобраться не смог... Только начиню создавать класс , там определены конструктор и деструктор. Но появляется проблема с созданием экземпляра. Компилятор ругается на неразрешенный символ при вызове конструктора. Во вложениях видно что из экземпляра класса конструктор не доступен (1 картинка), а в самом классе...
C++ C++ файлы ifstream/ofstream запись класса Доброе время суток дамы и господа :) необходимо помочь ибо что-то голова не варит )) класс #pragma once #include <iostream> using namespace std; class date { int day; int mounth; int year; http://www.cyberforum.ru/cpp-beginners/thread928727.html
while ( не нажата клавиша) C++
Есть цикл while. Нужно что б цикл заканчивал виполнение если нажата клавиша ... Добавлено через 9 секунд клавиша любая
C++ TiffLib
пытаюсь отрыть файл этой либой, но мне пишет в консоль "Deflate compression support is not configured.". Я так понимаю не нужно пересобрать либу с какимито параметрами. Может кто работал с библиотека отзовитесь плис. П.С. компилятор msvc 2010
C++ Пузырьковая сортировка http://www.cyberforum.ru/cpp-beginners/thread928700.html
Помогите плз. Работаю в Visual Studio 2010. Написал алгоритм пузырьковой сортировки, но когда запускаю вместо одной из цифр выводится самое маленькое из возможных чисел (-858993460). В чем ошибка не знаю. Вот код : #include "stdafx.h" #include <iostream> #include <fstream> using namespace std; int main()
C++ Ошибка на стадии выполнения ptr = ptr; class CObject { friend Parser; // много полей методов, все должны заполняться в парсере } class Parser { CObject * object_ public: подробнее

Показать сообщение отдельно
eocron
Кактус
 Аватар для eocron
66 / 66 / 6
Регистрация: 23.05.2012
Сообщений: 343
25.07.2013, 18:02     Подскажите как написать такое дерево (или БД)
Задача состоит в том, чтобы построить структуру данных по заданному рекурсивному расписанию каталогов. Причем:Все узлы отсортированны по порядковому номеру, в каждом узле должно быть имя, индекс родителя, сортированный вектор из индексов детей.

Вот пример:
C++
1
2
3
4
5
6
7
8
9
10
11
.
./download_client.sh
./random1000_queries_sport.txt
./times.txt
./site
./site/site_kz_domains_random1000_2011-07-26.txt
./site/site_ru_domains_random1000_2011-07-26.txt
./site/site_by_domains_random1000_2011-07-26.txt
./site/kz
./site/kz/random1000
./site/kz/random1000/site_by_domains_random1000_2011sd-07-26.txt
А вот мой намоляканный код на обработку этого:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
      struct Node
      {
             string name;
             int high;
             int parent;
             map<int, Node *> kids;
      };
      
      map<int,Node> tree;
 
___________________________
 
                  string str;
                  string name;
 
                  for(int i=0;cin.good();i++)
                  {
                        cin>>str;
                        name = GetTail(str);
                        
                        tree[i].name                   = name;
                        tree[i].parent                 = ????????????????????????????
                        tree[i].high                   = tree[tree[i].parent].high + 1;
                        
                        tree[parent].kids[i]           = &tree[i]; //ну тут позор, да. Сделал для прикола
                  }
                  system("pause");
Загвоздка в том, что я не пойму каким образом получить индекс родителя. Точнее как это сделать оптимальнее всего, хранить весь путь а потом искать по нему? Или бить на части и искать по частям? Или мап сделать от имени (но тогда пострадает поиск по индексу, что вообще очень печально)?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru