Immutable vectors are a convenient data structure for functional programming and part of the standard library of modern languages like Clojure and Scala. The common implementation is based on wide trees with a fixed number of children per node, which allows fast indexed lookup and update operations. In this paper we ex-tend the vector data type with a new underlying data structure, Re-laxed Radix Balanced Trees (RRB-Trees), and show how this struc-ture allows immutable vector concatenation, insert-at and splits in O(logN) time while maintaining the index, update and iteration speeds of the original vector data structure. 1
We propose a new R-tree structure that outperforms all the older ones. The heart of the idea is to i...
In standard binary trees the rebalancing is carried out in connection with and immediately folowing ...
A famous algorithm is the Fast Fourier Transform, or FFT. An efficient iterative version of the FFT ...
State-of-the-art immutable collections have wildly differing performance characteristics across thei...
The RRB-tree is a confluently persistent data structure based on the persistent vector, with efficie...
Abstract. Parallel algorithms can be expressed more concisely in a functional programming style. Thi...
We consider binary search trees, where rebalancing transformations need not be connected with update...
AbstractAn amortized analysis of the insertion and deletion algorithms ofk-dimensional balanced bina...
We show how binary trees of bounded balance can be maintained so that the time to perform each indiv...
B-trees with relaxed balance have been defined to facilitate fast updating on shared-memory asynchro...
We describe a general technique for obtaining provably cor-rect, non-blocking implementations of a l...
The abstract data type one-sided flexible array, also called randomaccess list, supports look-up and...
AVL trees with relaxed balance were introduced with the aim of improving runtime performance by allo...
Red-black trees are the binary search trees that guarantee logarithmic complexity also in the worst ...
A new approach for providing an efficient implementation of concatenable ordered lists is discussed...
We propose a new R-tree structure that outperforms all the older ones. The heart of the idea is to i...
In standard binary trees the rebalancing is carried out in connection with and immediately folowing ...
A famous algorithm is the Fast Fourier Transform, or FFT. An efficient iterative version of the FFT ...
State-of-the-art immutable collections have wildly differing performance characteristics across thei...
The RRB-tree is a confluently persistent data structure based on the persistent vector, with efficie...
Abstract. Parallel algorithms can be expressed more concisely in a functional programming style. Thi...
We consider binary search trees, where rebalancing transformations need not be connected with update...
AbstractAn amortized analysis of the insertion and deletion algorithms ofk-dimensional balanced bina...
We show how binary trees of bounded balance can be maintained so that the time to perform each indiv...
B-trees with relaxed balance have been defined to facilitate fast updating on shared-memory asynchro...
We describe a general technique for obtaining provably cor-rect, non-blocking implementations of a l...
The abstract data type one-sided flexible array, also called randomaccess list, supports look-up and...
AVL trees with relaxed balance were introduced with the aim of improving runtime performance by allo...
Red-black trees are the binary search trees that guarantee logarithmic complexity also in the worst ...
A new approach for providing an efficient implementation of concatenable ordered lists is discussed...
We propose a new R-tree structure that outperforms all the older ones. The heart of the idea is to i...
In standard binary trees the rebalancing is carried out in connection with and immediately folowing ...
A famous algorithm is the Fast Fourier Transform, or FFT. An efficient iterative version of the FFT ...