tooljar

    排序可视化器

    通过逐步动画可视化和比较排序算法

    冒泡排序

    反复遍历列表,比较相邻元素,如果它们的顺序错误就交换它们。

    最佳情况
    O(n)
    平均情况
    O(n²)
    最坏情况
    O(n²)
    空间
    O(1)

    可视化

    排序结果

    190
    总比较次数
    117
    总交换次数
    308
    总步数
    20
    数组大小

    颜色图例

    默认
    比较中
    交换中
    已排序
    枢轴

    时间复杂度参考

    冒泡排序:O(n) 最佳,O(n²) 平均/最坏
    选择排序:O(n²) 所有情况
    插入排序:O(n) 最佳,O(n²) 平均/最坏
    快速排序:O(n log n) 最佳/平均,O(n²) 最坏
    归并排序:O(n log n) 所有情况

    关于排序可视化器

    逐步可视化不同排序算法的工作原理。通过比较次数、交换次数和时间复杂度比较它们的效率。

    排序算法

    • 冒泡排序:简单的基于比较的排序,适合学习
    • 选择排序:重复查找最小值,始终为 O(n²)
    • 插入排序:对小型/接近排序的数组高效
    • 快速排序:使用枢轴的分治算法,实践中非常快
    • 归并排序:稳定的 O(n log n),需要额外空间