Cuthill–McKee algorithm

This is an old revision of this page, as edited by MathMartin (talk | contribs) at 15:37, 28 September 2004 (link). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In the mathematical subfield of matrix theory the Cuthill-McKee algorithm is an algorithm to reduce the bandwidth of sparse symmetric matrices.

Algorithm

Given a symmetric n×n matrix we visualize the matrix as the adjacency matrix of a graph. The Cuthill-McKee algorithm is then a relabeling of the vertices of the graph to reduce the bandwith of the adjacency matrix.

The algorithm produces an ordered n-tuple R of vertices which is the new order of the vertices.

First we choose a peripheral vertex x and set R:= ({x}).

Then for i=1,2,.. we iterate the following steps while |R| < n

  • Construct the adjacency set Ai of Ri (with Ri the i-th component of R) and exclude the vertices we already have in R
 
  • Sort Ai with ascending vertex order.
  • Append Ai to the Result set R

References

E. Cuthill and J. McKee. Reducing the bandwidth of sparse symmetric matrices In Proc. 24th Nat. Conf. ACM, pages 157-172, 1969.