title: Algorithm for connecting set of points?
body: <p>Suppose we are given a set of N points (xi,yi) in the real plane.</p>
  
  <p>We want to connect them with any number of lines, such that for every pair of points A, B - there is a path from A to B (possibly indirectly through another point) - and the total length of the lines is minimal.</p>
  
  <p>For example, suppose these are towns in a desert and we are constructing a road network.  We want to use the minimum amount of materials to construct the roads but still have every town reachable by road.</p>
  
  <p>For N = 2 the solution is of course simply a line segment between the two points:</p>
  
  <pre><code>+------------------+
  </code></pre>
  
  <p>For N = 3, suppose the points are colinear, then the solution is again one line segment:</p>
  
  <pre><code>+------+-----------+
  </code></pre>
  
  <p>For N = 3, suppose the points would make the vertexes of an equilateral triangle, then we would add a point in the center and then construct three line segments connecting the new central point to each of the three points:</p>
  
  <pre><code>         +
           |
           |
          / \
         /   \
        /     \
       +       +
  </code></pre>
  
  <p>I'm sure the problem and its solution should be well-studied.  Does the problem and/or algorithm have a name?</p>