{"@context":"https:\/\/schema.org\/","@type":"ScholarlyArticle","@id":"#article10455","name":"Succinct Color Searching in One Dimension","abstract":"In this paper we study succinct data structures for one-dimensional color reporting and color counting problems. \r\nWe 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}. \r\nA 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]. \r\n\r\nWe 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, \r\nwhere \\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, \r\nthat it is not necessary to store colors of points in order to answer approximate color counting queries. \r\nIn the special case when points are in the rank space (i.e., when n=m), our data structure needs only O(n) bits.\r\nAlso, we show that \\Omega(n) bits are necessary in that case.\r\n\r\nThen we turn to succinct data structures for color reporting. \r\nWe describe a data structure that uses \\mathcal{B}(n,m) + nH_d(S) + o(\\mathcal{B}(n,m)) + o(n\\lg\\sigma) bits and answers queries in O(k+1) time, \r\nwhere 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(n\\lg\\sigma) bits and supports queries in O(k+1) time.","keywords":["Succinct Data Structures","Range Searching","Computational Geometry"],"author":[{"@type":"Person","name":"El-Zein, Hicham","givenName":"Hicham","familyName":"El-Zein"},{"@type":"Person","name":"Munro, J. Ian","givenName":"J. Ian","familyName":"Munro"},{"@type":"Person","name":"Nekrich, Yakov","givenName":"Yakov","familyName":"Nekrich"}],"position":30,"pageStart":"30:1","pageEnd":"30:11","dateCreated":"2017-12-07","datePublished":"2017-12-07","isAccessibleForFree":true,"license":"https:\/\/creativecommons.org\/licenses\/by\/3.0\/legalcode","copyrightHolder":[{"@type":"Person","name":"El-Zein, Hicham","givenName":"Hicham","familyName":"El-Zein"},{"@type":"Person","name":"Munro, J. Ian","givenName":"J. Ian","familyName":"Munro"},{"@type":"Person","name":"Nekrich, Yakov","givenName":"Yakov","familyName":"Nekrich"}],"copyrightYear":"2017","accessMode":"textual","accessModeSufficient":"textual","creativeWorkStatus":"Published","inLanguage":"en-US","sameAs":"https:\/\/doi.org\/10.4230\/LIPIcs.ISAAC.2017.30","publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","isPartOf":{"@type":"PublicationVolume","@id":"#volume6295","volumeNumber":92,"name":"28th International Symposium on Algorithms and Computation (ISAAC 2017)","dateCreated":"2017-12-07","datePublished":"2017-12-07","editor":[{"@type":"Person","name":"Okamoto, Yoshio","givenName":"Yoshio","familyName":"Okamoto"},{"@type":"Person","name":"Tokuyama, Takeshi","givenName":"Takeshi","familyName":"Tokuyama"}],"isAccessibleForFree":true,"publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","hasPart":"#article10455","isPartOf":{"@type":"Periodical","@id":"#series116","name":"Leibniz International Proceedings in Informatics","issn":"1868-8969","isAccessibleForFree":true,"publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","hasPart":"#volume6295"}}}