Cuthill–McKee algorithm  In numerical linear algebra, the Cuthill–McKee algorithm (CM), named for Elizabeth Cuthill and James McKee, is an algorithm to permute a sparse matrix that has a symmetric sparsity pattern into a band matrix form with a small bandwidth. The reverse Cuthill–McKee algorithm (RCM) due to Alan George is the same algorithm but with the resulting index numbers reversed. In practice this generally results in less fill-in than the CM ordering when Gaussian elimination is applied. The Cuthill McKee algorithm is a variant of the standard breadth-first search algorithm used in graph algorithms. It starts with a peripheral node and then generates levels formula_1 for formula_2 until all nodes are exhausted. The set formula_3 is created from set formula_4 by listing all vertices adjacent to all nodes in formula_5. These  nodes are listed in increasing degree. This last detail is the only difference with the breadth-first search algorithm. Given a symmetric formula_6 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 bandwidth of the adjacency matrix. The algorithm produces an ordered "n"-tuple formula_7 of vertices which is the new order of the vertices. First we choose a peripheral vertex (the vertex with the lowest degree) formula_8 and set formula_9. Then for formula_10 we iterate the following steps while formula_11   In other words, number the vertices according to a particular breadth-first traversal where neighboring vertices are visited in order from lowest to highest vertex order.