1. 时间复杂度
-
冒泡排序、选择排序和插入排序的时间复杂度都是 O(n^2),这意味着它们的运行时间随着数据量的增加呈平方增长。
-
归并排序和快速排序的时间复杂度都是 O(n log n),这意味着它们的运行时间随着数据量的增加呈线性增长。
2. 空间复杂度
-
冒泡排序、选择排序和插入排序的空间复杂度都是 O(1),这意味着它们不需要额外的空间。
-
归并排序的空间复杂度是 O(n),因为它需要额外的空间来存储合并后的数组。
-
快速排序的空间复杂度是 O(log n),因为它需要递归调用。
3. 稳定性
-
稳定排序算法是指在排序过程中,如果两个元素的值相等,它们的相对顺序不会改变。
-
冒泡排序、插入排序和归并排序是稳定的排序算法。
-
选择排序和快速排序是不稳定的排序算法。