Computing the all-pairs longest chains in the plane
Many problems on sequences and on circular-arc graphs involve the computation of longest chains between points in the plane. Given a set S of n points in the plane, we consider the problem of computing the matrix of longest chain lengths between all pairs of points in S, and the matrix of “parent” pointers that describes the n longest chain trees. We present a simple sequential algorithm for computing these matrices. Our algorithm runs in O(n2) time, and hence is optimal. We also present a rather involved parallel algorithm that computes these matrices in O(log2n) time using O(n2/log n) processors in the CREW PRAM model. These matrices enables us to report, in O(1) time, the length of a longest chain between any two points in S by using one processor, and the actual chain by using k processors, where k is the number of points of S on that chain. The space complexity of the algorithms is O(n2).
Unable to display preview. Download preview PDF.
- A. Aggarwal and J. Park. “Notes on Searching in Multidimensional Monotone Arrays (Preliminary Version),” Proc. 29th Annual IEEE Symposium on Foundations of Computer Science, 1988, pp, 497–512.Google Scholar
- M. J. Atallah and S. R. Kosaraju. “An Efficient Parallel Algorithm for the Row Minima of a Totally Monotone Matrix,” Proc. 2nd ACM-SIAM Symp. on Discrete Algorithms, San Francisco, California, 1991, pp. 394–403. (Accepted for publication in J. of Algorithms.)Google Scholar
- O. Berkman and U. Vishkin. “Finding Level-Ancestors in Trees,” Tech. Rept. UMIACS-TR-91-9, University of Maryland, 1991.Google Scholar
- O. Berkman and U. Vishkin. Personal communication.Google Scholar
- B. M. Chazelle. “Optimal Algorithms for Computing Depths and Layers,” Proc. of the 20th Allerton Conference on Communications. Control and Computing, 1983, pp. 427–436.Google Scholar
- M.L. Fredman. “On Computing the Length of Longest Increasing Subsequences,” Discrete Mathematics, 1975, pp. 29–35.Google Scholar
- F. Gavril. “Algorithms for a Maximum Clique and a Maximum Independent Set of a Circle Graph,” Networks, 1973, pp. 261–273.Google Scholar
- F. Gavril. “Algorithms on Circular-Arc Graphs,” Networks, 1974, pp. 357–369.Google Scholar
- U.I. Gupta, D.T. Lee, and Y.-T. Leung. “Efficient Algorithms for Interval Graphs and Circular Arc Graphs,” Networks, 1982, pp. 459–467.Google Scholar
- W.-L. Hsu. “Maximum Weight Clique Algorithms for Circular-Arc Graphs and Circle Graphs,” SIAM J. on Computing, 1985, pp. 224–231.Google Scholar
- A. Pnueli, A. Lempel, and S. Even. “Transitive Orientation of Graphs and Identification of Permutation Graphs,” Canadian Journal of Math. 23, 1, 1971, pp. 160–175.Google Scholar
- D. Rotem and U. Urrutia. “Finding Maximum Cliques in Circle Graphs,” Networks, 1981, 1pp. 269–278.Google Scholar