Breadth first search(BFS) is a very powerful and useful algorithm for
exploring graph like structures. A BFS searches it’s nearest neighbors first
before moving on. It’s main use is to find a path using
the fewest hops. Here we use it to explore a grid that can be modified
by a user. In this grid, we have verticies (the grid boxes), and edges
(the box north, south, east and west).