La profondeur de la Première Traversée et Adj Matrice

Je suis en train de faire un parcours en profondeur d'abord la traversée. Je n'ai aucune idée si je suis de près. Maintenant, c'est de l'impression 1 3 4 5. Il convient de l'impression 1 2 4 7 3 5 6. L'aide ou des conseils est apprécié. Merci. 🙂

La profondeur de la Première Traversée et Adj Matrice

Classe:

 public class myGraphs {
Stack<Integer> st;
int vFirst;
int[][] adjMatrix;
int[] isVisited = new int[7];
public myGraphs(int[][] Matrix) {
this.adjMatrix = Matrix;
st = new Stack<Integer>();
int i;
int[] node = {1, 2, 3, 4, 5, 6, 7};
int firstNode = node[0];
for (i = 1; i < node.length - 1; i++) {
depthFirst(firstNode, node[i]);
}
}
public void depthFirst(int vFirst, int n) {
int v, i;
st.push(vFirst);
while (!st.isEmpty()) {
v = st.pop();
if (isVisited[v]==0) {
System.out.print("\n"+v);
isVisited[v]=1;
}
for ( i=1;i<=n;i++) {
if ((adjMatrix[v][i] == 1) && (isVisited[i] == 0)) {
st.push(v);
isVisited[i]=1;
System.out.print(" " + i);
v = i;
}
}
}
}
//
public static void main(String[] args) {     
//1  2  3  4  5  6  7
int[][] adjMatrix = { {0, 1, 1, 0, 0, 0, 0},
{1, 0, 0, 1, 1, 1, 0},
{1, 0, 0, 0, 0, 0, 1},
{0, 1, 0, 0, 0, 0, 1},
{0, 1, 0, 0, 0, 0, 1},
{0, 1, 0, 0, 0, 0 ,0},
{0, 0, 1, 1, 1, 0, 0}  };
new myGraphs(adjMatrix);
}
}
  • Profondeur d'abord la recherche de quoi?
  • Sa profondeur de recherche pour un graphique.
  • Mais ce que vous cherchez?
  • Tu vas avoir à définir la "profondeur" ici. Par ma lecture, je m'attends à [1 2 4 7 3 5 6], depuis le 7 peut aller à 3 et 5.
  • L'OP-à-dire de la profondeur d'abord traversée.
  • la recherche de la traversée
  • Je pense que votre
  • Je pense que tout le bas de la enfants devrait venir en premier hein?
  • n'est pas le terme correct ici.
  • de toute façon, je suis le seul à en arriver à 4 chiffres à l'affichage, j'ai besoin de 7
  • avez-vous essayé de marcher à travers votre code dans un débogueur pour découvrir pourquoi son comportement s'écarte de ce que vous attendez?

InformationsquelleAutor TMan | 2011-11-11