public class DFS
{
	public DFS(NodeList m, Node v)
	{
		//System.out.println("You made it in the constructor");

		int totWeight = 0;
		v.setVisit(true);



		//NOT DONE YET
		/*for (MapPoint mp :
		{
			if(mp.getVisit() == false)
			{
				Node w = mp.getEndPoint();
				if (w.getVisit() == false)
				{
					totWeight = totWeight + mp.getDistance();
					mp.setVisit(true);
					DFS go2 = new DFS(m, w);
				}
				else
				{
					mp.setBackEdge(true);
					DFS go3 = new DFS(m, v);
				}
			}
		}*/
	}
}

@@ -1,214 +1,470 @@
-public class DFS%0A%7B%0A%09public DFS(NodeList m, Node v)%0A%09%7B%0A%09%09//System.out.println(%22You made it in the constructor%22);%0A%0A%09%09int totWeight = 0;%0A%09%09v.setVisit(true);%0A%0A%0A%0A%09%09//NOT DONE YET%0A%09%09/*for (MapPoint mp :%0A%09%09%7B%0A%09%09%09
+import java.util.ArrayList;%0A%0Apublic class DFS%0A%7B%0A    %0A    private  int cities = 1;%0A    private int totWeight = 0;%0A    private NodeList m;%0A    private ArrayList%3CString%3E cityNames = new ArrayList%3C%3E();%0A    %0A    public DFS(NodeList m)%7B%0A        %0A        this.m = m;%0A        %0A    %7D%0A    %0A    public void drive(String start)%7B%0A      %0A%09cityNames.add(start);%0A%0A%09ArrayList%3CMapPoint%3E mp = m.searchAll(start);%0A%0A        for(int i = 0; i %3C mp.size(); i++)%0A%09%7B%0A            
 if(mp.
+get(i).
 getV
@@ -482,88 +482,297 @@
 alse
-)%0A%09%09%09%7B%0A%09%09%09%09Node w = mp.getEndPoint(
+ && mp.get(i).getBackEdge() == false && !cityNames.contains(mp.get(i).getEndPoint()))%0A            %7B%0A                mp.get(i).setVisit(true
 );%0A%09%09
-%09%09if (w.getVisit() == false)%0A%09%09%09%09%7B%0A%09%09%09%09%09
+mp.get(i).setBackEdge(true);%0A%0A                String search = mp.get(i).getEndPoint();%0A%09%09System.out.println(%22City: %22 + search);%0A%0A                
 totW
@@ -794,16 +794,23 @@
 ht + mp.
+get(i).
 getDista
@@ -822,156 +822,247 @@
 ;%0A%09%09
-%09%09%09mp.setVisit(true);%0A%09%09%09%09%09DFS go2 = new DFS(m, w);%0A%09%09%09%09%7D%0A%09%09%09%09else%0A%09%09%09%09%7B%0A%09%09%09%09%09mp.setBackEdge(true);%0A%09%09%09%09%09DFS go3 = new DFS(m, v);%0A%09%09%09%09%7D%0A%09%09%09%7D%0A%09%09%7D*/%0A%09%7D
+System.out.println(%22Total Weight: %22 + totWeight);%0A%0A                cities = cities + 1;%0A%09%09System.out.println(%22# of Cities: %22 + cities);%0A%0A                System.out.println(%22%22);%0A%0A%09%09drive(search);%0A%09    %7D%0A%09%09%09%0A%09%7D        %0A        %0A    %7D%0A        
 %0A%7D%0A

Update DFS.java