powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
6 сообщений из 6, страница 1 из 1
Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
    #32766881
Иван FXS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я хочу хранить словарь в виде дерева. Например, пусть словарь состоит из четырех слов:
"он"
"она"
"оса"
"мы"

- тогда от "корня дерева" должно идти две ветки (ветка " о " и ветка " м ");
ветка " о " должна разветвляться на ветки " он " и " ос ";
ветка " он " ... можно сказать, что она тоже разветвляется - на ветки " он-конец_слова " и " она ";
ветка " она " продолжается в вету " она-конец_слова ";
ветки " он-конец_слова " и " она-конец_слова " - ОЗНАЧАЮТ (хранят) сами слова "он" и "она" ...
- надеюсь, что понятно обрисовал.

Вопрос: как такую структуру данных наиболее эффекимвно реализовать в VBA?

PS. Да, оа должна быть "динамической", то есть должна быть способна к "расширению" (добавлению в себя новых слов)!
...
Рейтинг: 0 / 0
Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
    #32767025
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я бы сохранил в БД в таблице формата
UID - код элелемента
ID - название элелемента
ParentUID - код родителя
...
Рейтинг: 0 / 0
Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
    #32767047
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если это нужно для двоичного поиска (Binary search trees), то не стоит заморачиваться - проще взять готовый код.
Ну и реализация структуры данных зависит от кода их обрабатывающих.
...
Рейтинг: 0 / 0
Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
    #32767075
Иван FXS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
big-dukeя бы сохранил в БД в таблице формата ...- no-no, мене нада не "в БД", а - в оперативной памяти, в переменных модуля!

marvan Если это нужно для двоичного поиска (Binary search trees), то не стоит заморачиваться - проще взять готовый код.- а как, извините, мне понять - двоичный в этой задаче поиск или не двоичный? Я понимаю, что я буду "поступающие" слова (словоформы, если быть точным) проверять по этому дереву, ... а "двоично" ли - эт я как-то не могу сообразить!
Но тем не менее: а "готовый код" где можно посмотреть, не подскажете?

marvanНу и реализация структуры данных зависит от кода их обрабатывающих. - эт мне как-то не понятно ... мне казалось, что структуры данных - сама по себе - либо зело эффективна, либо - не вельми! (В смысле, прежде всего, требуемой ею памяти ... поскольку словарик-то мыслится немного побольше, чем в приведенном примере ... раз эдак ... в миллион ;-) )
...
Рейтинг: 0 / 0
Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
    #32767133
marvan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
готовый код:
Binary Tree Class
...
Рейтинг: 0 / 0
Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
    #32767568
Alexey Kudinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрите на любую готовую древовидную структуру.
Например как хранит дерево контрол TreeView.
MSDN TreeView - Nodes и т.д.
Там все очень разумно, за исключением одного - часто бывает надо пройтись по всем нодам, без рекурсии. Так что имеет смысл где-то хранить ссылку на полную коллекцию без разделения на дочение и родительские ветви
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Q: Как наиболее эффекимвно организовать структуру данных для хранения дерева?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]