Algorithm For Breadth First Search