Parallel recognition of the consecutive ones property with applications. (English) Zbl 0726.68034
Summary: Given a (0,1)-matrix, the problem of recognizing the consecutive 1’s property for rows is to decide whether it is possible to permute the columns such that the resulting matrix has the consecutive 1’s in each of its rows. We give the first NC algorithm for this problem. The algorithm runs in 0(log n\(+\log^ 2m)\) time using \(0(m^ 2n+m^ 3)\) processors on Common CRCW PRAM, where \(m\times n\) is the size of the matrix. The algorithm can be extended to detect the circular 1’s property within the same resource bounds. We can also make use of the algorithm to recognize convex bipartite graphs in \(0(\log^ 2n)\) time using \(0(n^ 3)\) processors, where n is the number of vertices in a graph. We further show that the maximum matching problem for arbitrary convex bipartite graphs can be solved within the same complexity bounds, combining the work by Dekel and Sahni, who gave an efficient parallel algorithm for computing maximum matchings in convex bipartite graphs with the condition that the neighbors of each vertex in one vertex set of a bipartite graph occur consecutively in the other vertex set. This broadens the class of graphs for which the maximum matching problem is known to be in NC.
MSC:
68W15 | Distributed algorithms |
68R10 | Graph theory (including graph drawing) in computer science |
68Q25 | Analysis of algorithms and problem complexity |
05C50 | Graphs and linear algebra (matrices, eigenvalues, etc.) |