2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Задачи на деревья
Сообщение14.04.2020, 00:25 


09/03/20
34
Вот у меня вот такие вот задачи.

1) Допустим, реализована структура данных set, позволяющая бысто совершать операции insetrt и count, но не erase. Как можно реализовать новую структуру данных, которая умела бы выполнять все три операции ( на основе уже имеющихся) с сохранением асимптотики $\mathbf{O}(\log(n))$.

Вот моя идея:

Храним в нашей структуре данных сет и любое дерево поиска:
1) $set<TypeValue> basic$
2) $btree<pair<DeleteElem, bool* x> > deleted$, where $*x = true$, if $deleted$

Теперь Функции
$Erase$:

Ищем элемент в $deleted$, если там есть делаем $*x = true$, если нет инсертим
туда value, указатель на true

$Insert$:

Мы ищем элемент в $deleted$, если он есть делаем $*x = false$, делаем $insert$ в
сет $basic$

$Count$:

Мы ищем элемент в $deleted$, если он там есть, смотрим на $*x$ и возвращаем
нужное значение (if false then return 1 else 0), если его там нет возвращаем 0.

Но мне кажется, что можно решить более просто используя два set'а.


Вторая задача.

Необходимо во взвешенном дереве, то есть на каждом ребре написано некоторе целое число. Нужно найти наибольший простой путь с нулевой суммой с асимптотикой $\mathbf{O}(n\log(n))$.

Эту задачу я не понимаю как решать за быстро. Мне бы пригодились любые ваши подсказки.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group