We present simple, practical and efficient data structures for the fundamental problem of maintaining a resizable one-dimensional array, A[l..l + n - 1], of fixed-size elements, as elements are added to or removed from one or both ends. Our structures also support access to the element in position i. All operations are performed in constant time. The extra space (i.e., the space used past storing the n current elements) is O(√n) at any point in time. This is shown to be within a constant factor of optimal, even if there are no constraints on the time. If desired, each memory block can be made to have size 2k - c for a specified constant c, and hence the scheme works effectively with the buddy system. The data structures can be used to solve...
International audienceThis work extends lattice-based memory allocation, an earlier work on memory r...
We study the dynamic membership (or dynamic dictionary) problem, which is one of the most fundamenta...
Arrays are the ubiquitous organization for indexed data. Throughout programming language evolution, ...
We present simple, practical and efficient data structures for the fundamental problem of maintainin...
A \emph{resizable array} is an array that can \emph{grow} and \emph{shrink} by the addition or remov...
The packed-memory array (PMA) is a data structure that maintains a dynamic set of N elements in sort...
In memory-constrained algorithms we have read-only access to the input, and the number of additional...
Efficient memory allocation is crucial for data-intensive applications, as a smaller memory footprin...
In memory-constrained algorithms, access to the input is restricted to be read-only, and the number ...
This thesis deals with data structures that are mostly useful in the area of string matching and str...
(eng) We investigate the technique of storing multiple array elements in the same memory cell, with ...
Abstract We propose several modifications to the binary buddy system for managing dynamicallocation ...
extended abstractA data structure is partially persistent if previous versions remain available for ...
In this report, we look at the problem of packing a number of arrays in memory efficiently. This is ...
In this paper, we discuss a program transformation technique called array reshaping. Array reshaping...
International audienceThis work extends lattice-based memory allocation, an earlier work on memory r...
We study the dynamic membership (or dynamic dictionary) problem, which is one of the most fundamenta...
Arrays are the ubiquitous organization for indexed data. Throughout programming language evolution, ...
We present simple, practical and efficient data structures for the fundamental problem of maintainin...
A \emph{resizable array} is an array that can \emph{grow} and \emph{shrink} by the addition or remov...
The packed-memory array (PMA) is a data structure that maintains a dynamic set of N elements in sort...
In memory-constrained algorithms we have read-only access to the input, and the number of additional...
Efficient memory allocation is crucial for data-intensive applications, as a smaller memory footprin...
In memory-constrained algorithms, access to the input is restricted to be read-only, and the number ...
This thesis deals with data structures that are mostly useful in the area of string matching and str...
(eng) We investigate the technique of storing multiple array elements in the same memory cell, with ...
Abstract We propose several modifications to the binary buddy system for managing dynamicallocation ...
extended abstractA data structure is partially persistent if previous versions remain available for ...
In this report, we look at the problem of packing a number of arrays in memory efficiently. This is ...
In this paper, we discuss a program transformation technique called array reshaping. Array reshaping...
International audienceThis work extends lattice-based memory allocation, an earlier work on memory r...
We study the dynamic membership (or dynamic dictionary) problem, which is one of the most fundamenta...
Arrays are the ubiquitous organization for indexed data. Throughout programming language evolution, ...