## The Euler Path to Static Level-Ancestors (2007)

Citations: | 1 - 0 self |

### BibTeX

@MISC{Ben-amram07theeuler,

author = {Amir M. Ben-amram},

title = {The Euler Path to Static Level-Ancestors},

year = {2007}

}

### OpenURL

### Abstract

Suppose a rooted tree T is given for preprocessing. The level-ancestor problem is to answer quickly queries of the following form. Given a vertex v and an integer i> 0, find the ith vertex on the path from the root to v. Algorithms that achieve a linear time bound for preprocessing and a constant time bound for a query have been published by Dietz (1991), Alstrup and Holm (2000), and Bender and Farach (2002). The first two algorithms address dynamic versions of the problem; the last addresses the static version only and is the simplest. The purpose of this note is to expose another simple algorithm that lies under a complicated PRAM algorithm by Berkman and Vishkin (1990,1994). We further show that its simplicity allows for an easy extension of its functionality, adding queries for descendants and level successors as well as ancestors, extensions for which the former algorithm is less suitable. 1

### Citations

330 |
Fast algorithms for finding nearest common ancestors
- Harel, Tarjan
(Show Context)
Citation Context ... i, find the first descendant of v on level i (if one exists). The level-ancestor problem is a relative of the better-known LCA (Least Common Ancestor) problem. In their seminal paper on LCA problems =-=[12]-=-, Harel and Tarjan solve the level ancestor problem on certain special trees as a subroutine of an LCA algorithm. An application of this problem is mentioned in [1], where the authors do not give deta... |

185 |
On finding lowest common ancestors: simplification and parallelization
- Schieber, Vishkin
- 1988
(Show Context)
Citation Context ... special trees as a subroutine of an LCA algorithm. An application of this problem is mentioned in [1], where the authors do not give details of the solution but briefly refer to “ideas from [12] and =-=[14]-=-.” The first published algorithms for the level ancestor problem were a PRAM algorithm by Berkman and Vishkin [6, 7], and a serial (RAM) algorithm by Dietz [8] that accommodates dynamic updates. Alstr... |

76 | Nearest common ancestors: A survey and a new algorithm for a distributed environment. Theory Comput
- Alstrup, Gavoille, et al.
- 2004
(Show Context)
Citation Context ... ) time, and altogether we get 2 b · Θ(b 2 ) = O(n) time and space. 5.2 A solution after Alstrup, Gavoille, Kaplan and Rauhe Another implementation of the micro structure is suggested by an idea from =-=[2]-=-. In its basic form, as we next describe, it is really independent of the division into blocks— except that it only supports queries where the answer is close enough to the query index. For i < j ≤ n,... |

56 | Optimal Preprocessing for Answering On-line Product Queries
- Alon, Schieber
- 1987
(Show Context)
Citation Context ...heir seminal paper on LCA problems [12], Harel and Tarjan solve the level ancestor problem on certain special trees as a subroutine of an LCA algorithm. An application of this problem is mentioned in =-=[1]-=-, where the authors do not give details of the solution but briefly refer to “ideas from [12] and [14].” The first published algorithms for the level ancestor problem were a PRAM algorithm by Berkman ... |

54 | F.: Optimal bounds for the predecessor problem and related problems
- Beame, Fich
(Show Context)
Citation Context ...ry time, if one requires a polynomial-space data structure, and assumes a polylogarithmic word length; the reason is that the static predecessor problem, for which non-constant lower bounds are known =-=[4]-=-, can be easily reduced to it. Another preparatory definition is the following. Let n be a power of two and consider a balanced binary tree of n − 1 nodes numbered 1 through n − 1 in symmetric order (... |

41 | A new succinct representation of rmq-information and improvements in the enhanced suffix array
- Fischer, Heun
- 2007
(Show Context)
Citation Context ...p two elements (specifically, if ai+1 = ai + 1). The current mask is easily adjusted in O(1) time. Clearly, the computation of M takes Θ(n) time, and this is also the space required. Fischer and Heun =-=[9]-=- propose to apply this technique within microblocks; in other words, revert to the Berkman-Vishkin approach of maintaining a table indexed by the block identifier, but keep the mask table instead of a... |

41 | Succinct ordinal trees with level-ancestor queries
- GEARY, RAMAN, et al.
- 2006
(Show Context)
Citation Context ...s given for this problem. • This solution is improved to linear-time preprocessing and size using the microset technique [10, 12]. The microset technique is also used in other work on level ancestors =-=[3, 5, 13, 11]-=- but they all apply at least part of the processing to the tree, using various methods of decomposition into subtrees. Here, all processing is applied to the Euler-tour array. Consider a tree T = (V, ... |

39 | The level ancestor problem simplified
- Bender, Farach-Colton
(Show Context)
Citation Context ...e and may well be considered practical, in contrast with its far more complicated predecessors. Finally, an even simpler algorithm—this time for the static problem only—was given by Bender and Farach =-=[5]-=-. What is curious about this history is that very complicated algorithms to address theoretical challenges, namely dynamization and parallelization, had been published 1searlier than was any simple al... |

33 |
Finding level-ancestors in trees
- Berkman, Vishkin
- 1994
(Show Context)
Citation Context ...authors do not give details of the solution but briefly refer to “ideas from [12] and [14].” The first published algorithms for the level ancestor problem were a PRAM algorithm by Berkman and Vishkin =-=[6, 7]-=-, and a serial (RAM) algorithm by Dietz [8] that accommodates dynamic updates. Alstrup and Holm [3] gave an algorithm that solves an extended dynamic problem, and has the additional advantage that its... |

27 |
A Linear Time Algorithm for a Special Case of Disjoint Set Union
- Gabow, Tarjan
- 1985
(Show Context)
Citation Context ...inear array. • A data structure with Θ(n log n) preprocessing time (and size) is given for this problem. • This solution is improved to linear-time preprocessing and size using the microset technique =-=[10, 12]-=-. The microset technique is also used in other work on level ancestors [3, 5, 13, 11] but they all apply at least part of the processing to the tree, using various methods of decomposition into subtre... |

20 |
Recursive *-tree parallel data-structure
- Berkman, Vishkin
- 1989
(Show Context)
Citation Context ...authors do not give details of the solution but briefly refer to “ideas from [12] and [14].” The first published algorithms for the level ancestor problem were a PRAM algorithm by Berkman and Vishkin =-=[6, 7]-=-, and a serial (RAM) algorithm by Dietz [8] that accommodates dynamic updates. Alstrup and Holm [3] gave an algorithm that solves an extended dynamic problem, and has the additional advantage that its... |

19 |
Succinct representations of functions
- MUNRO, RAO
(Show Context)
Citation Context ...s given for this problem. • This solution is improved to linear-time preprocessing and size using the microset technique [10, 12]. The microset technique is also used in other work on level ancestors =-=[3, 5, 13, 11]-=- but they all apply at least part of the processing to the tree, using various methods of decomposition into subtrees. Here, all processing is applied to the Euler-tour array. Consider a tree T = (V, ... |

16 | Improved algorithms for finding level ancestors in dynamic trees
- Alstrup, Holm
- 2000
(Show Context)
Citation Context ... published algorithms for the level ancestor problem were a PRAM algorithm by Berkman and Vishkin [6, 7], and a serial (RAM) algorithm by Dietz [8] that accommodates dynamic updates. Alstrup and Holm =-=[3]-=- gave an algorithm that solves an extended dynamic problem, and has the additional advantage that its static-only version is quite simple and may well be considered practical, in contrast with its far... |

13 |
Finding level-ancestors in dynamic trees
- Dietz
- 1991
(Show Context)
Citation Context ...t briefly refer to “ideas from [12] and [14].” The first published algorithms for the level ancestor problem were a PRAM algorithm by Berkman and Vishkin [6, 7], and a serial (RAM) algorithm by Dietz =-=[8]-=- that accommodates dynamic updates. Alstrup and Holm [3] gave an algorithm that solves an extended dynamic problem, and has the additional advantage that its static-only version is quite simple and ma... |

1 | Efficient distributed third-party data authentication for tree hierarchies
- Yuan, Atallah
- 2008
(Show Context)
Citation Context ...scendant queries, in addition to level ancestor. Together, these two queries are useful for iterating over the descendants of a vertex at a given level. For example applications of the extension, see =-=[14, 15]-=-. Technical remarks. Since we only consider data structures that support O(1)-time queries, we refer to the algorithms by the preprocessing cost. That is, an O(n)-time algorithm means linear-time prep... |

1 | Efficient data structures for range-aggregate queries on trees
- Yuan, Atallah
- 2009
(Show Context)
Citation Context ...scendant queries, in addition to level ancestor. Together, these two queries are useful for iterating over the descendants of a vertex at a given level. For example applications of the extension, see =-=[14, 15]-=-. Technical remarks. Since we only consider data structures that support O(1)-time queries, we refer to the algorithms by the preprocessing cost. That is, an O(n)-time algorithm means linear-time prep... |