PseudoCode
Input: s as the source node BFS (G, s)
let Q be queue.
Q.enqueue( s )
mark s as visited
while ( Q is not empty)
v = Q.dequeue( )
if v is the goal
return v;
for all neighbors w of v in Graph G
if w is not visited
Q.enqueue( w )
mark w as visited
G represents graph.
S represents source.
Q represents queue.
W represents neighbour.