Basically, we have to start searching for the root node. And continue through neighboring nodes first. Further, moves towards next level of nodes. Moreover, till the solution is found, generates one tree at a time. As this search can be implemented using FIFO queue data structure. This method provides the shortest path to the solution. FIFO(First in First Out). If the branching factor (average number of child nodes for a given node) = b and depth = d, the number of nodes at level d = bd. The total no of nodes created in worst case is b + b2 + b3 + … + bd.