广度优先搜索(Breadth-First Search,BFS)通过系统地展开并检查图中的所有节点来找寻结果。它可以解决最短路径问题(人际网络、字符检查、跳棋等);
前提:先掌握图(Graph)、队列(queue)、栈(stack)的概念。
它的搜索方式是通过逐层遍历所有相邻节点,从而暴力的找出最短路径
DFS与BFS的区别:
BFS与DFS.gif

图通常表示为G(V,E),其中,G标示一个图,V是图G中顶点的集合,E是图G中边的集合。
无向边(Edge):若顶点Vi到Vj之间的边没有方向,则称这条边为无向边,用序偶对(Vi,Vj)标示。