1:11:00, про исключения в инсерте, по моему это не верно, ибо компоратор используется только для того, чтобы найти позицию, куда вставить новую ноду. А балансировка происходит без сравнений, ибо все дерево уже отсортировано и его остается только разворачивать, чтобы сохранить высоту дерева слева и справа
@margarethavanderdekken32562 жыл бұрын
кажется что в кчд элемент вставляется вместо листа а уже потом вращения происходят
@larlena2 жыл бұрын
@@margarethavanderdekken3256я не совсем понял тебя
@margarethavanderdekken32562 жыл бұрын
@@larlena ну типа когда добавляем узел в красно-чёрное дерево, мы его вставляем вместо листа, а далее происходит балансировка дерева, где как раз нужен компаратор, то есть там сначала вставляется вершина, а уже потом дерево вращается с помощью компаратора
@larlena2 жыл бұрын
@@margarethavanderdekken3256 по крайне мере, в лекциях про алгоритмы говорилась, что элемент сначала вставляется и только после этого дерево начинают крутить. Тем более, единственное логичное и понятное объяснение тому, что map::insert, если кинет исключение, останется юзабельным. Ну это конечно как мне кажется
@acalabash2 жыл бұрын
@@larlena все правильно. Свойства КЧД позволяют ориентироваться только по цвету родственников ноды, поэтому компаратор при поворотах не используется.
@niklkelbon36623 жыл бұрын
11:00 - а потом делаешь insert в вектор, всё сдвинулось вправо или влево, все итераторы сломались, начинаем хранить таблицу всех выделенных итераторов в шаред поинтерах хДД
@user-ro3yp4sz4h2 жыл бұрын
Илья, max_load_factor можно задать и 0,5, и 10 (float). Почему в лекции речь о значении
@sibedir5 ай бұрын
51:00 А у map'а есть гарантия на неинвалидацию этого самого фиктивного итератора конца контейнера?
@ad4823aa803e2 жыл бұрын
Режет слух слово Key /kiː/. Произносится как "ки", а не "кей".