title: Testing for a circuit when implementing Kruskalls algorithm
body: <p>I'm trying to write a program that would find the minimum spanning tree. But one problem I am having with this algorithm, is testing for a circuit. What would be the best way to do this in java.</p>
  
  <p>Ok here is my code</p>
  
  <pre><code>import java.io.*;
  import java.util.*;
  
  public class JungleRoads 
  {
      public static int FindMinimumCost(ArrayList graph,int size)
      {
          int total = 0;
          int [] marked = new int[size];      //keeps track over integer in the mst
  
          //convert an arraylist to an array
          List&lt;String&gt; wrapper = graph;
          String[] arrayGraph = wrapper.toArray(new String[wrapper.size()]);
          String[] temp = new String[size];
          HashMap visited = new HashMap();
  
  
          for(int i = 0; i &lt; size; i++)
          {
             // System.out.println(arrayGraph[i]);
              temp = arrayGraph[i].split(" ");
  
              //loop over connections of a current node
              for(int j =  2; j &lt; Integer.parseInt(temp[1])*2+2; j++)
              {
  
                  if(temp[j].matches("[0-9]+"))
                  {
                      System.out.println(temp[j]);
                  }
              }
  
  
          }
  
  
          graph.clear();
          return total;
  
  
      }
  
  
      public static void main(String[] args) throws IOException
      {
  
           FileReader fin = new FileReader("jungle.in");
          BufferedReader infile = new BufferedReader(fin);
  
          FileWriter fout = new FileWriter("jungle.out");
          BufferedWriter outfile = new BufferedWriter(fout);
  
  
          String line;
          line = infile.readLine();
          ArrayList graph = new ArrayList();
  
          do
          {
  
              int num = Integer.parseInt(line);
              if(num!= 0)
              {
  
                  int size = Integer.parseInt(line)-1;
  
                  for(int i=0; i &lt; size; i++)
                  {
                      line = infile.readLine(); 
                      graph.add(line);
                  }
  
                 outfile.write(FindMinimumCost(graph, size));
              }   
  
  
              line = infile.readLine();
          }while(!line.equals("0"));
  
      }
  }
  </code></pre>