Очень хотелось бы узнать и понять алгоритм дерева отрезков. Я смотрел много источников но не смог ни код написать, ни на практике использовать. А именно больше всего хотелось бы узнать реализацию и теорию прибавления на отрезке. Хочу заранее поблагодарить того кто поможет!!!
Не рановато ли тебе его учить?)
Учить что-то никогда не рано. Если человеку интересно, то пусть изучает.
Ну можешь глянуть курс по алгоритмам Дениса Павловича Кириенко на Фоксфорде (я в свое время по нему изучал ДО).
Забыл сказать. Чтобы понять Дерево отрезков нужно хорошо понимать бинарные деревья поиска. Так что если ты не изучал их, то рекомендую ознакомиться. По сути ДО — это не какая-то "особенная" структура данных, а простое бинарное дерево, в каждой ячейке которого хранится информация о каком-то отрезке (полуинтервале).
Странно, минусы то за что?
Можно разве что понять, как это работает, но писать, как написано в курсе не советую т.к. в свое время тоже по нему учил и теперь пишу по привычке на этих указателях(. Стоит писать не на указателях, а на массивах, одна из самых главных причин — дебаг. Вроде как скорость на указах тоже поменьше
Да, на указателях гораздо медленнее. Ну реализацию можно на emaxx взять.
https://e-maxx.ru/algo/segment_tree, тут подробно описаны дерево отрезков и его разные вариации.
geeksforgeeks set 1
geeksforgeeks set 2
В geeksforgeeks подробно прокомментированные коды.
http://brestprog.by/topics/segmenttree/ — тут и визуализация в картинках есть, и объяснено неплохо.
SEO-оптимизируем брестпрог
https://www.youtube.com/channel/UC_Y39KfAPRCUb4d7ksys5NQ