|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
31.01.2017, 19:37 | #1 |
Заблокирован
Регистрация: 11.11.2016
Сообщений: 261
|
Проверка существует ли узел с данным IP в дереве упорядоченном по времени
Я храню IP-адреса узлов в бинарном дереве, упорядоченном по времени подключения узла. Мне нужно написать процедуру проверки, существует ли в этом дереве узел с данным IP. Так как дерево упорядочено по времени, стандартный бинарный поиск тут не поможет. Как выйти из положения? Менять структуру данных и делать что-то вроде декартова дерева?
|
31.01.2017, 19:56 | #2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Сортировать по IP адресам.
Если нужен поиск по времени, тогда создайте две коллекции - по времени и по адресам. |
31.01.2017, 20:03 | #3 |
Заблокирован
Регистрация: 11.11.2016
Сообщений: 261
|
Тогда возникнет проблема в синхронизации двух коллекций. Мне нужно поддерживать актуальность узлов в таблице, для этого я буду удалять самые старые узлы и запрашивать первые 10 узлов у другим клиентов.
|
31.01.2017, 20:23 | #4 | ||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
Цитата:
почему не сделать еще и ссылки по имени(IP-адресу). участие узла в двух деревьях с разной упорядоченностью (время и имя). Цитата:
программа — запись алгоритма на языке понятном транслятору
|
||
31.01.2017, 20:26 | #5 |
Заблокирован
Регистрация: 11.11.2016
Сообщений: 261
|
|
31.01.2017, 20:36 | #6 |
Заблокирован
Регистрация: 11.11.2016
Сообщений: 261
|
А может, сделать индекс как в базах данных? Какие эффективные алгоритмы для этого существуют?
|
31.01.2017, 23:42 | #7 | |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Цитата:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удалить узел в бинарном дереве | Вероника99 | Помощь студентам | 6 | 23.06.2016 14:27 |
Проверка элементов в дереве. Язык Си | iamhated | Помощь студентам | 0 | 04.04.2013 13:07 |
Система управления доступом к данным, по времени (вероятно C#.NET) | Malisar | Помощь студентам | 0 | 05.03.2013 18:41 |
Нужно написать функцию, которая проверяет содержатся ли элементы из первого дерева во втором дереве, в указанном в 1 дереве порядк | Laurensii | Помощь студентам | 2 | 24.12.2012 02:55 |