Chapter

Experimental and Efficient Algorithms

Volume 3503 of the series Lecture Notes in Computer Science pp 315-327

Efficient Implementation of Rank and Select Functions for Succinct Representation

  • Dong Kyue KimAffiliated withSchool of Electrical and Computer Engineering, Pusan National University
  • , Joong Chae NaAffiliated withSchool of Computer Science and Engineering, Seoul National University
  • , Ji Eun KimAffiliated withSchool of Electrical and Computer Engineering, Pusan National University
  • , Kunsoo ParkAffiliated withSchool of Computer Science and Engineering, Seoul National University

* Final gross prices may vary according to local VAT.

Get Access

Abstract

Succinct representation is a space-efficient method to represent n discrete objects by O(n) bits. In order to access directly the ith object of succinctly represented data structures in constant time, two fundamental functions, rank and select are commonly used. However, little efforts were made on analyzing practical behaviors of these functions despite their importance for succinct representations.

In this paper we analyze the behavior of Clark’s algorithm which is the only one to support select in constant time using o(n)-bit space of extra space, and show that the performance of Clark’s algorithm gets worse as the number of 1’s in a bit-string becomes fewer and there exists a worst case in which a large amount of operations are needed. Then, we propose two algorithms that overcome the drawbacks of Clark’s. These algorithms take constant time forselect, and one uses o(n) bits for extra space and the other uses n + o(n) bits in the worst case. Experimental results show that our algorithms compute select faster than Clark’s.