S. Srinivasa Rao
Seoul National University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by S. Srinivasa Rao.
Algorithmica | 2005
David Benoit; Erik D. Demaine; J. Ian Munro; Rajeev Raman; Venkatesh Raman; S. Srinivasa Rao
AbstractThis paper focuses on space efficient representations of rooted trees that permit basic navigation in constant time. While most of the previous work has focused on binary trees, we turn our attention to trees of higher degree. We consider both cardinal trees (or k-ary tries), where each node has k slots, labelled {1,...,k}, each of which may have a reference to a child, and ordinal trees, where the children of each node are simply ordered. Our representations use a number of bits close to the information theoretic lower bound and support operations in constant time. For ordinal trees we support the operations of finding the degree, parent, ith child, and subtree size. For cardinal trees the structure also supports finding the child labelled i of a given node apart from the ordinal tree operations. These representations also provide a mapping from the n nodes of the tree onto the integers {1, ..., n}, giving unique labels to the nodes of the tree. This labelling can be used to store satellite information with the nodes efficiently.
symposium on discrete algorithms | 2006
Alexander Golynski; J. Ian Munro; S. Srinivasa Rao
We consider a generalization of the problem of supporting rank and select queries on binary strings. Given a string of length <i>n</i> from an alphabet of size σ, we give the first representation that supports <i>rank</i> and <i>access</i> operations in <i>O</i>(lg lg σ) time, and <i>select</i> in <i>O</i>(1) time while using the optimal <i>n</i> lg σ + <i>o</i>(<i>n</i> lg σ) bits. The best known previous structure for this problem required <i>O</i>(lg σ) time, for general values of σ. Our results immediately improve the search times of a variety of text indexing methods.
international colloquium on automata languages and programming | 2003
J. Ian Munro; Rajeev Raman; Venkatesh Raman; S. Srinivasa Rao
We investigate the problem of succinctly representing an arbitrary permutation, π, on {0, ..., n - 1} so that πk(i) can be computed quickly for any i and any (positive or negative integer) power k. A representation taking (1 + Ɛ)n lg n + O(1) bits suffices to compute arbitrary powers in constant time. A representation taking the optimal [lg n!] + o(n) bits can be used to compute arbitrary powers in O(lg n/lg lg n) time, or indeed in a minimal O(lg n) bit probes.
workshop on algorithms and data structures | 2001
Rajeev Raman; Venkatesh Raman; S. Srinivasa Rao
We develop succinct data structures to represent (i) a sequence of values to support partial sum and select queries and update (changing values) and (ii) a dynamic array consisting of a sequence of elements which supports insertion, deletion and access of an element at any given index. For the partial sums problem on n non-negative integers of k bits each, we support update operations in O(b) time and sum in O(logb n) time, for any parameter b, lgn/ lg lg n ≤ b ≤ nƐ for any fixed positive Ɛ < 1. The space used is kn+o(kn) bits and the time bounds are optimal. When b = lgn/ lg lg n or k = 1 (i.e., when we are dealing with a bit-vector), we can also support the select operation in the same time as the sum operation, but the update time becomes amortised. For the dynamic array problem, we give two structures both using o(n) bits of extra space where n is the number of elements in the array: one supports lookup in constant worst case time and updates in O(nƐ) worst case time, and the other supports all operations in O(lg n/lg lg n) amortized time. The time bound of both these structures are optimal.
international colloquium on automata languages and programming | 2003
Rajeev Raman; S. Srinivasa Rao
We consider space-efficient solutions to two dynamic data structuring problems. We first give a representation of a set S ⊆ U = {0,..., m-1}, |S| = n that supports membership queries in O(1) worst case time and insertions into/deletions from S in O(1) expected amortised time. The representation uses B+o(B) bits, where B = ⌈lg (m n)⌉ is the information-theoretic minimum space to represent S. This improves upon the O(B)-bit solutions of Brodnik and Munro [2] and Pagh [16], and uses up to a log-factor less space than search trees or hash tables. The representation can also associate satellite data with elements of S. We also show that a binary tree on n nodes, where each node has b = O(lg n)-bit data stored at it, can be maintained under node insertions while supporting navigation in O(1) time and updates in O((lg lg n)1+Ɛ) amortised time, for any constant Ɛ > 0. The space used is within o(n) bits of the information-theoretic minimum. This improves upon the equally space-efficient structure of Munro et al. [15], in which updates take O(lgc n) time, for some c ≥ 1.
international colloquium on automata, languages and programming | 2004
J. Ian Munro; S. Srinivasa Rao
We investigate the problem of succinctly representing an arbitrary function, f: [n] →[n] so that f k (i) can be computed quickly for any i and any (positive or negative) integer power k. We give a representation that takes \((1+\epsilon) n \lg n + O(1)\) bits and computes arbitrary positive powers in constant time. It can also be used to compute f k (i), for any negative integer k, in O(1+|f k (i)|) time.
european symposium on algorithms | 2007
Alexander Golynski; Roberto Grossi; Ankur Gupta; Rajeev Raman; S. Srinivasa Rao
A succinct data structure occupies an amount of space that is close to the information-theoretic minimum plus an additional term. The latter is not necessarily a lower-order term and, in several cases, completely dominates the space occupancy both in theory and in practice. In this paper, we present several solutions to partially overcome this problem, introducing new techniques of independent interest that allow us to improve over previously known upper and lower bounds.
european symposium on algorithms | 2010
Gerth Stølting Brodal; Pooya Davoodi; S. Srinivasa Rao
The two dimensional range minimum query problem is to preprocess a static two dimensional m by n array A of size N = m ċ n, such that subsequent queries, asking for the position of the minimum element in a rectangular range within A, can be answered efficiently. We study the trade-off between the space and query time of the problem. We show that every algorithm enabled to access A during the query and using O(N/c) bits additional space requires Ω(c) query time, for any c where 1 ≤ c ≤ N. This lower bound holds for any dimension. In particular, for the one dimensional version of the problem, the lower bound is tight up to a constant factor. In two dimensions, we complement the lower bound with an indexing data structure of size O(N/c) bits additional space which can be preprocessed in O(N) time and achieves O(c log2 c) query time. For c = O(1), this is the first O(1) query time algorithm using optimal O(N) bits additional space. For the case where queries can not probe A, we give a data structure of size O(N ċ min{m, log n}) bits with O(1) query time, assuming m ≤ n. This leaves a gap to the lower bound of Ω(N log m) bits for this version of the problem.
Information Processing Letters | 1998
Venkatesh Raman; Bala Ravikumar; S. Srinivasa Rao
It is shown that the MAX2SAT problem is NP-complete even if every variable appears in at most three clauses. However, if every variable appears in at most two clauses, it is shown that it (and even the general MAXSAT problem) can be solved in linear time. When every variable appears in at most three clauses, we give an exact algorithm for MAXSAT that takes at most O(3n2n) steps where n is the number of variables.
symposium on theoretical aspects of computer science | 2009
Roberto Grossi; Alessio Orlandi; Rajeev Raman; S. Srinivasa Rao
We consider the problem of representing, in a compressed format, a bit-vector~