import java.util.LinkedList;
import java.util.Queue;
public class BFSExample {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] conn = { { 0, 1, 0, 1, 0, 0, 0, 0, 1 }, // 0
{ 1, 0, 0, 0, 0, 0, 0, 1, 0 }, // 1
{ 0, 0, 0, 1, 0, 1, 0, 1, 0 }, // 2
{ 1, 0, 1, 0, 1, 0, 0, 0, 0 }, // 3
{ 0, 0, 0, 1, 0, 0, 0, 0, 1 }, // 4
{ 0, 0, 1, 0, 0, 0, 1, 0, 0 }, // 5
{ 0, 0, 0, 0, 0, 1, 0, 0, 0 }, // 6
{ 0, 1, 1, 0, 0, 0, 0, 0, 0 }, // 7
{ 1, 0, 0, 0, 1, 0, 0, 0, 0 } };// 8
BFS(conn);
}
public static void BFS(int[][] conn) {
Queue q = new LinkedList();
boolean[] visited = new boolean[conn.length];
for(int i = 0; i < visited.length; i++){
visited[i] = false;
}
q.add(0);
while(!q.isEmpty()){
int nextNode;
int i;
nextNode= (int) q.remove();
if(!visited[nextNode]){
visited[nextNode] = true;
System.out.println("nextNode = "+ nextNode);
for(i = 0; i < visited.length; i++){
if(conn[nextNode][i] > 0 && !visited[i]){
q.add(i);
}
}
}
}
}
}
import java.util.Queue;
public class BFSExample {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[][] conn = { { 0, 1, 0, 1, 0, 0, 0, 0, 1 }, // 0
{ 1, 0, 0, 0, 0, 0, 0, 1, 0 }, // 1
{ 0, 0, 0, 1, 0, 1, 0, 1, 0 }, // 2
{ 1, 0, 1, 0, 1, 0, 0, 0, 0 }, // 3
{ 0, 0, 0, 1, 0, 0, 0, 0, 1 }, // 4
{ 0, 0, 1, 0, 0, 0, 1, 0, 0 }, // 5
{ 0, 0, 0, 0, 0, 1, 0, 0, 0 }, // 6
{ 0, 1, 1, 0, 0, 0, 0, 0, 0 }, // 7
{ 1, 0, 0, 0, 1, 0, 0, 0, 0 } };// 8
BFS(conn);
}
public static void BFS(int[][] conn) {
Queue q = new LinkedList();
boolean[] visited = new boolean[conn.length];
for(int i = 0; i < visited.length; i++){
visited[i] = false;
}
q.add(0);
while(!q.isEmpty()){
int nextNode;
int i;
nextNode= (int) q.remove();
if(!visited[nextNode]){
visited[nextNode] = true;
System.out.println("nextNode = "+ nextNode);
for(i = 0; i < visited.length; i++){
if(conn[nextNode][i] > 0 && !visited[i]){
q.add(i);
}
}
}
}
}
}
No comments:
Post a Comment