316. Christofides

A 32-approximation algorithm for the metric TSP — produces tours guaranteed within 1.5× optimal.

For 40 years, this was the best-known approximation ratio. In 2020, Karlin-Klein-Gharan improved it slightly (to 1.51036). Christofides’ algorithm remains the standard reference point.

316.1. The algorithm

Given a complete graph with distances satisfying the triangle inequality (𝑐𝑖𝑘𝑐𝑖𝑗+𝑐𝑗𝑘):

  1. Build MST — minimum spanning tree 𝑇 of the graph
  2. Find odd-degree nodes in 𝑇 — call this set 𝑂. (By handshake lemma, |𝑂| is even.)
  3. Min-weight perfect matching on 𝑂 — solve a matching problem on the subgraph induced by 𝑂
  4. Combine MST + matching — gives a multigraph where every vertex has even degree
  5. Find Eulerian circuit on this multigraph — visits every edge exactly once
  6. Shortcut — convert the Eulerian circuit to a TSP tour by skipping repeated visits (uses triangle inequality)

The output is a Hamiltonian tour with total length 1.5 OPT.

316.2. Why 32?

316.3. Complexity

The matching step makes Christofides slower than simpler heuristics like 2-opt on large instances.

316.4. When triangle inequality fails

If the graph doesn’t satisfy triangle inequality (e.g., asymmetric TSP with arbitrary costs):

For Euclidean TSP in the plane:

316.5. Worth knowing in 2026

316.6. See also