Groups
Category
Persistence lets you keep every past version of a data structure while making O(log n) updates and queries on any version.
A treap is a binary search tree on keys combined with a heap on random priorities, which keeps the tree balanced in expectation.