public int BFSlength(int source){
		int length=0;
		ArrayList<Integer> notVisited=new ArrayList<Integer>(cpnt);
		ArrayList<Integer> visited = new ArrayList<Integer>();
		
		if(notVisited.size()==1)
			return 1;
		
		notVisited.remove(notVisited.indexOf(new Integer(source)));
		visited.add(new Integer(source));

		while(notVisited.size()>1){
			Integer asdf = visited.get(0);
			visited.remove(0);
			for(int i=0;i<notVisited.size();i++){
				if(MSTedge[asdf][notVisited.get(i)]){
					visited.add(notVisited.get(i));
					notVisited.remove(i);
				}
			}
			if(visited.size()==0){
				visited.add(new Integer(notVisited.get(0)));
				notVisited.remove(0);
				continue;
			}
			length++;
		}
		return length+1;
	}