in a Steiner tree T , We will refer to X as the terminals and Z as the extra nodes. We fist claim that each extra nide has degree at least 3 in T; for if not,then the triangle inequality implies we can replace its two incident edges by an edge joining its two neighbors. Since the sum of the degrees in a t-node tree is 2t - 2,every tree has at least as many leaves as it has nodes of degree greater than 2.It follows that if we compute the minimum spanning tree on all sets of the form ,the cheapest among these will be the minimum Steiner tree. There are at most ... such sets to try,so the overall running time will be .