Bubble sort vs Quicksort
Bubble sort vs quicksort compared — speed, complexity and when each is appropriate, with interactive visualizers.
Bubble sort is a simple O(n²) teaching algorithm; quicksort is an efficient O(n log n) divide-and-conquer sort used in practice. The gap is enormous at scale.
Bubble sort vs Quicksort at a glance
| Bubble sort | Quicksort | |
|---|---|---|
| Average time | O(n²) | O(n log n) |
| In place | Yes | Yes |
| Use | Teaching only | Production sorting |
| Scales | No | Yes |
When to use Bubble sort
Use bubble sort only to learn how sorting and swaps work — never for real data.
When to use Quicksort
Use quicksort (or your language's built-in sort) for real workloads.
Tools for Bubble sort & Quicksort
冒泡排序可视化工具
带动画演示的冒泡排序模拟器,提供单步执行、速度调节、自定义输入数据、实时比较/交换计数器以及伪代码同步高亮。完全在浏览器中运行。
打开工具快速排序可视化工具
动态演示快速排序算法,高亮 pivot 与分区过程,支持单步执行、速度调节、自定义输入数据,并实时显示比较/交换次数与伪代码。直接在浏览器中运行。
打开工具插入排序可视化工具
动画演示插入排序算法,支持单步执行、速度调节、自定义输入数据,并实时显示比较/写入次数与伪代码高亮。完全在浏览器本地运行。
打开工具归并排序可视化工具
带动画演示的归并排序模拟器,支持单步执行、速度调节、自定义输入数据、实时比较/写入计数器以及伪代码高亮显示。完全在浏览器中运行。
打开工具Bubble sort vs Quicksort
什么是归并排序?
归并排序会递归地将数组对半拆分,直到每部分只剩一个元素,然后再将这些部分按顺序合并起来。
归并排序的时间复杂度是多少?
无论最好、平均还是最坏情况,都是 O(n log n)。其中 log n 来自对半拆分的深度,n 则来自每一层合并所需的操作量。
归并排序是稳定的吗?
是的——在合并过程中,遇到相等的元素时会优先取左半部分的元素,从而保持它们原有的相对顺序。
归并排序有什么缺点?
它需要额外的 O(n) 空间来存放合并时的临时缓冲区,不像堆排序或快速排序那样是原地(in-place)排序算法。