... @@ -24,13 +24,13 @@ The information-theoretical optimum is $OPT(n) := \lceil\log |X(n)|\rceil$ ... @@ -24,13 +24,13 @@ The information-theoretical optimum is $OPT(n) := \lceil\log |X(n)|\rceil$ Now we can define three classes of data structures based on their fine-grained space Now we can define three classes of data structures based on their fine-grained space efficiency: efficiency: \defn{An {\I implicit data structure} is one that uses at most $OPT(n) + \O(1)$ bits of space.} \defn{An {\I implicit data structure} is one with $s(n) \le OPT(n) + \O(1)$.} A typical implicit data structure contains just its elements in some order and nothing more. A typical implicit data structure contains just its elements in some order and nothing more. Examples include sorted arrays and heaps. Examples include sorted arrays and heaps. \defn{A {\I succinct data structure} is one that uses at most $OPT(n) + {\rm o}(OPT(n))$ bits of space.} \defn{A {\I succinct data structure} is one with $s(n) \le OPT(n) + {\rm o}(OPT(n))$.} \defn{A {\I compact data structure} is one that uses at most $\O(OPT(n))$ bits of space.} \defn{A {\I compact data structure} is one with $s(n) \le \O(OPT(n))$.} Note that some linear-space data structures are not even compact -- because we Note that some linear-space data structures are not even compact -- because we are counting bits now, not words. For example, a linked list representing a are counting bits now, not words. For example, a linked list representing a ... ...