1、实现分类算法的可视化,只需对每一数据的变化进行颜色标记。
2、将其作为一帧柱状图象的数据绘制出来,将前一帧的画面清空,循环往复直到最后排好序的画面显示,我们的一次排序算法可视化循环完成。
需要一个二维列表(frames),其中的元素就是每一帧数据的列表。
还需要将每个数据转换为class,有它自己的值属性和值属性,以及set_color()方法。
实例
def sort(li): # 这样赋值的frames列表中的元素是一个个的列表,每一帧的数据是其中的元素 frames = [li] ds = copy.deepcopy(li) # 赋值一份初始列表,用于存储每一帧变化后的数据 # 冒泡排序: for i in range(32): for j in range(32 - i - 1): ds_r = copy.deepcopy(ds) # 赋值一份ds中的数据 ds_r[j].set_color('#DC143C') # 将数据的color设置为'#DC143C' ds_r[j + 1].set_color('#7FFFAA') frames.append(ds_r) # 将color变化后的数据追加到frmaes中 if ds[j].value > ds[j + 1].value: ds[j + 1], ds[j] = ds[j], ds[j + 1] frames.append(ds) # 将最后排好序的数据追加 return frames
以上就是python实现排序算法的可视化方法,希望对大家有所帮助。更多Python学习指路:
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。