使用 Pygame 模块实现了广度优先搜索(BFS)的动画演示。首先,通过邻接矩阵表示了一个图的结构,其中每个节点表示一个字符,每个字符的邻居表示与之相邻的节点。然后,通过广度优先搜索算法按层级顺序访问节点,过程中通过动画效果可视化每一步的变化。每次访问一个节点,该节点变为绿色,与其相邻的边变为黑色,形成广度优先搜索的动画效果。算法使用队列来维护当前层级的节点,并逐步向下一层级扩展。这个演示通过适度的延迟和颜色变化,直观展示了广度优先搜索在图上的层级遍历过程,帮助理解算法是如何逐层扩展搜索路径的。
完整实现代码:
import pygame
import sys
from collections import deque
# 初始化 Pygame
pygame.init()
# 定义颜色
WHITE =