|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : ALexandr Karimov 2:5020/400 07 Oct 2002 18:57:54 To : All Subject : Выбор древовидной структуры --------------------------------------------------------------------------------
Есть следующая задача:
В начале мне приходит дерево следующего вида:
ROOT
|-PIM1
| |-HOST1
| |-HOST2
|-PIM2
| |-HOST2
|-PIM3
|-HOST2
|-HOST3
Далее мне начинают поступать данные, в которых указано, с какого хоста они
пришли и к какому пиму относятся. Соответсвеено мне нужно в это дерево их
добавлять в порядке прибытия. Приоритет операции добавления и удаления ниже
среднего.
Важными операциями являются извлечение их из этого дерева по наложенному
фильтру, причем фильтр может быть двух видов:
1) ПИМ+ХОСТ (тут просто надо вернуть все множество в поддереве)
2) ПИМ+ВСЕ ЕГО ХОСТЫ (в данном случае необходимо вернуть множество
элементов, отсортированное в порядке их поступления)
Самой важной операцией является операция, которая возвращает кол-во
элементов после наложения фильтра.
Еще на будущее было бы неплохо иметь возможность достаточно быстро данный
вид дерева преобразовать в следующий:
ROOT
|-HOST1
| |-PIM1
|-HOST2
| |-PIM1
| |-PIM2
| |-PIM3
|-HOST3
|-HOST3
И при этом фильтры:
1) ПИМ+ХОСТ
2) ХОСТ + ВСЕ ЕГО ПИМЫ
Сам код будет реализовыватся на ява, но любая помощь в виде ссылок на
материалы или исходники (можно сишные) будет воспринята с благодарностью.
С уважением, Каримов Александр
--- ifmail v.2.15dev5
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/1134607a74300.html, оценка из 5, голосов 10
|