python实现排序算法的可视化

2024年06月22日 python排序 Python算法 Python51

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实现排序算法的可视化方法,希望对大家有所帮助。

本文链接:http://so.lmcjl.com/news/7051/

展开阅读全文