Может кто объяснить, почему добавление в Set работает за O(logN)? Ведь если он иммутабельный, то нужно создать новый и добавить туда элемент, разве нет?
из-за древовидной реализации, дерево позволяет обновить только одну ветку, не трогая вторую
и так log(n) веток обновляются, для дерева для n элементов