15 research outputs found

    Succinct Color Searching in One Dimension

    Get PDF
    In this paper we study succinct data structures for one-dimensional color reporting and color counting problems. We are given a set of n points with integer coordinates in the range [1,m] and every point is assigned a color from the set {1,...sigma}. A color reporting query asks for the list of distinct colors that occur in a query interval [a,b] and a color counting query asks for the number of distinct colors in [a,b]. We describe a succinct data structure that answers approximate color counting queries in O(1) time and uses mathcal{B}(n,m) + O(n) + o(mathcal{B}(n,m)) bits, where mathcal{B}(n,m) is the minimum number of bits required to represent an arbitrary set of size n from a universe of m elements. Thus we show, somewhat counterintuitively, that it is not necessary to store colors of points in order to answer approximate color counting queries. In the special case when points are in the rank space (i.e., when n=m), our data structure needs only O(n) bits. Also, we show that Omega(n) bits are necessary in that case. Then we turn to succinct data structures for color reporting. We describe a data structure that uses mathcal{B}(n,m) + nH_d(S) + o(mathcal{B}(n,m)) + o(nlgsigma) bits and answers queries in O(k+1) time, where k is the number of colors in the answer, and nH_d(S) (d=log_sigma n) is the d-th order empirical entropy of the color sequence. Finally, we consider succinct color reporting under restricted updates. Our dynamic data structure uses nH_d(S)+o(nlgsigma) bits and supports queries in O(k+1) time

    Approximate Range Counting Revisited

    Get PDF
    We study range-searching for colored objects, where one has to count (approximately) the number of colors present in a query range. The problems studied mostly involve orthogonal range-searching in two and three dimensions, and the dual setting of rectangle stabbing by points. We present optimal and near-optimal solutions for these problems. Most of the results are obtained via reductions to the approximate uncolored version, and improved data-structures for them. An additional contribution of this work is the introduction of nested shallow cuttings

    Dynamic Colored Orthogonal Range Searching

    Get PDF
    In the colored orthogonal range reporting problem, we want a data structure for storing n colored points so that given a query axis-aligned rectangle, we can report the distinct colors among the points inside the rectangle. This natural problem has been studied in a series of papers, but most prior work focused on the static case. In this paper, we give a dynamic data structure in the 2D case which can answer queries in O(log^{1+o(1)} n + klog^{1/2+o(1)}n) time, where k denotes the output size (the number of distinct colors in the query range), and which can support insertions and deletions in O(log^{2+o(1)}n) time (amortized) in the standard RAM model. This is the first fully dynamic structure with polylogarithmic update time whose query cost per color reported is sublogarithmic (near ?{log n}). We also give an alternative data structure with O(log^{1+o(1)} n + klog^{3/4+o(1)}n) query time and O(log^{3/2+o(1)}n) update time (amortized). We also mention extensions to higher constant dimensions

    Further Results on Colored Range Searching

    Get PDF
    We present a number of new results about range searching for colored (or "categorical") data: 1. For a set of nn colored points in three dimensions, we describe randomized data structures with O(npolylogn)O(n\mathop{\rm polylog}n) space that can report the distinct colors in any query orthogonal range (axis-aligned box) in O(kpolyloglogn)O(k\mathop{\rm polyloglog} n) expected time, where kk is the number of distinct colors in the range, assuming that coordinates are in {1,,n}\{1,\ldots,n\}. Previous data structures require O(lognloglogn+k)O(\frac{\log n}{\log\log n} + k) query time. Our result also implies improvements in higher constant dimensions. 2. Our data structures can be adapted to halfspace ranges in three dimensions (or circular ranges in two dimensions), achieving O(klogn)O(k\log n) expected query time. Previous data structures require O(klog2n)O(k\log^2n) query time. 3. For a set of nn colored points in two dimensions, we describe a data structure with O(npolylogn)O(n\mathop{\rm polylog}n) space that can answer colored "type-2" range counting queries: report the number of occurrences of every distinct color in a query orthogonal range. The query time is O(lognloglogn+kloglogn)O(\frac{\log n}{\log\log n} + k\log\log n), where kk is the number of distinct colors in the range. Naively performing kk uncolored range counting queries would require O(klognloglogn)O(k\frac{\log n}{\log\log n}) time. Our data structures are designed using a variety of techniques, including colored variants of randomized incremental construction (which may be of independent interest), colored variants of shallow cuttings, and bit-packing tricks.Comment: full version of a SoCG'20 pape

    Conditional Lower Bounds for Dynamic Geometric Measure Problems

    Get PDF

    Data Structures for Categorical Path Counting Queries

    Get PDF

    Faster Path Queries in Colored Trees via Sparse Matrix Multiplication and Min-Plus Product

    Get PDF

    Categorical Range Reporting with Frequencies

    Get PDF
    In this paper, we consider a variant of the color range reporting problem called color reporting with frequencies. Our goal is to pre-process a set of colored points into a data structure, so that given a query range Q, we can report all colors that appear in Q, along with their respective frequencies. In other words, for each reported color, we also output the number of times it occurs in Q. We describe an external-memory data structure that uses O(N(1+log^2D/log N)) words and answers one-dimensional queries in O(1 +K/B) I/Os, where N is the total number of points in the data structure, D is the total number of colors in the data structure, K is the number of reported colors, and B is the block size. Next we turn to an approximate version of this problem: report all colors sigma that appear in the query range; for every reported color, we provide a constant-factor approximation on its frequency. We consider color reporting with approximate frequencies in two dimensions. Our data structure uses O(N) space and answers two-dimensional queries in O(log_B N +log^*B + K/B) I/Os in the special case when the query range is bounded on two sides. As a corollary, we can also answer one-dimensional approximate queries within the same time and space bounds

    Space Efficient Two-Dimensional Orthogonal Colored Range Counting

    Get PDF
    In the two-dimensional orthogonal colored range counting problem, we preprocess a set, PP, of nn colored points on the plane, such that given an orthogonal query rectangle, the number of distinct colors of the points contained in this rectangle can be computed efficiently. For this problem, we design three new solutions, and the bounds of each can be expressed in some form of time-space tradeoff. By setting appropriate parameter values for these solutions, we can achieve new specific results with (the space are in words and ϵ\epsilon is an arbitrary constant in (0,1)(0,1)): ** O(nlg3n)O(n\lg^3 n) space and O(nlg5/2nlglgn)O(\sqrt{n}\lg^{5/2} n \lg \lg n) query time; ** O(nlg2n)O(n\lg^2 n) space and O(nlg4+ϵn)O(\sqrt{n}\lg^{4+\epsilon} n) query time; ** O(nlg2nlglgn)O(n\frac{\lg^2 n}{\lg \lg n}) space and O(nlg5+ϵn)O(\sqrt{n}\lg^{5+\epsilon} n) query time; ** O(nlgn)O(n\lg n) space and O(n1/2+ϵ)O(n^{1/2+\epsilon}) query time. A known conditional lower bound to this problem based on Boolean matrix multiplication gives some evidence on the difficulty of achieving near-linear space solutions with query time better than n\sqrt{n} by more than a polylogarithmic factor using purely combinatorial approaches. Thus the time and space bounds in all these results are efficient. Previously, among solutions with similar query times, the most space-efficient solution uses O(nlg4n)O(n\lg^4 n) space to answer queries in O(nlg8n)O(\sqrt{n}\lg^8 n) time (SIAM. J. Comp.~2008). Thus the new results listed above all achieve improvements in space efficiency, while all but the last result achieve speed-up in query time as well.Comment: full version of an ESA 2021 pape

    Conditional Lower Bounds for Dynamic Geometric Measure Problems

    Get PDF
    We give new polynomial lower bounds for a number of dynamic measure problems in computational geometry. These lower bounds hold in the Word-RAM model, conditioned on the hardness of either 3SUM, APSP, or the Online Matrix-Vector Multiplication problem [Henzinger et al., STOC 2015]. In particular we get lower bounds in the incremental and fully-dynamic settings for counting maximal or extremal points in R^3, different variants of Klee's Measure Problem, problems related to finding the largest empty disk in a set of points, and querying the size of the i'th convex layer in a planar set of points. We also answer a question of Chan et al. [SODA 2022] by giving a conditional lower bound for dynamic approximate square set cover. While many conditional lower bounds for dynamic data structures have been proven since the seminal work of Patrascu [STOC 2010], few of them relate to computational geometry problems. This is the first paper focusing on this topic. Most problems we consider can be solved in O(n log n) time in the static case and their dynamic versions have only been approached from the perspective of improving known upper bounds. One exception to this is Klee's measure problem in R^2, for which Chan [CGTA 2010] gave an unconditional Ω(n){\Omega}(\sqrt{n}) lower bound on the worst-case update time. By a similar approach, we show that such a lower bound also holds for an important special case of Klee's measure problem in R^3 known as the Hypervolume Indicator problem, even for amortized runtime in the incremental setting.Comment: Improved presentation, improved the reduction for the Hypervolume Indicator problem and added a reduction for dynamic approximate square set cove
    corecore