about summary refs log tree commit diff stats
path: root/algorithms/java/BFS.txt
diff options
context:
space:
mode:
Diffstat (limited to 'algorithms/java/BFS.txt')
-rw-r--r--algorithms/java/BFS.txt91
1 files changed, 0 insertions, 91 deletions
diff --git a/algorithms/java/BFS.txt b/algorithms/java/BFS.txt
deleted file mode 100644
index d8eb925..0000000
--- a/algorithms/java/BFS.txt
+++ /dev/null
@@ -1,91 +0,0 @@
-package com.company;

-class Coordinates{

-    public int x,y;                 //for storing coordinates as object

-    Coordinates(int x,int y){

-        this.x=x;

-        this.y=y;

-    }

-}

-public class BFS {                      //BFS main class

-    static Coordinates[] queue=new Coordinates[1000];         //queue of coordinates

-    private static int front=-1;

-    private static int rear=-1;

-

-

-    static void enqueue(Coordinates coord){   //enqueue function

-        if(front==-1 && rear==-1){

-            front=0;

-            rear=0;

-        }

-        else{

-            rear++;

-        }

-        queue[rear]= coord;

-    }

-    static void dequeue(){              //dequeue operation

-        if(front==0 && rear==0){

-            front=-1;

-            rear=-1;

-        }

-        else{

-            front++;

-        }

-    }

-

-    private static final int[][] dir=new int[][]{       //traversing directions

-            {0,1}, //right

-            {1,0}, //down

-            {0,-1}, //left

-            {-1,0} //up

-    };

-

-    static void bfs(char[][] maze,Coordinates start,boolean[][] visited){

-        int curx;

-        int cury;

-        for(int i=0;i<4;i++){

-            curx=start.x;

-            cury=start.y;

-            curx+=dir[i][0];

-            cury+=dir[i][1];

-            if(curx<0 || cury<0 || curx> maze.length-1 || cury>maze.length-1){

-                continue;                                                           //for square...  out of maze check

-            }

-            else if(maze[curx][cury]=='$'){

-                System.out.println("Path found");

-                System.exit(0);

-            }

-            else if(visited[curx][cury] || maze[curx][cury]=='#'){

-                continue;

-            }

-            else if(maze[curx][cury]=='_'){

-                enqueue(new Coordinates(curx,cury));

-                visited[curx][cury]=true;

-            }

-        }

-        dequeue();

-        if(front==-1){

-            System.out.println("path not found");

-            System.exit(0);

-        }

-        else

-            bfs(maze,queue[front],visited);

-    }

-    public static void main(String[] args) {

-        char[][] maze = {{'*','#','#'},

-                         {'_','_','#'},

-                          {'_','#','$'},

-        };

-        Coordinates start=new Coordinates(0,0);

-        boolean[][] visited=new boolean[maze.length][maze.length];

-        for(int i=0;i< maze.length;i++){

-            for(int j=0;j<maze.length;j++)  {

-                visited[i][j]=false;

-            }

-        }

-        visited[0][0]=true;

-        enqueue(start);

-        bfs(maze,start,visited);

-    }

-}

-

-