1、在预期情况下的快速排序和归并排序时间复杂度都一样。
在空间复杂度上,没使用临时栈的快速排序在空间上优于归并排序。
2、快速排序是不稳定的,归并排序稳定。
在稳定性上来说,快速排序是不稳定的排序,归并排序与堆排序一样是稳定的排序,即排序后,比较值相同元素相对位置不变。
3、二者都很容易实现分布式算法。
归并排序将子序列分发下去后,需要等待其下属计算机的反馈,等得到有序子序列后,才能进行合并操作。
4、归并排序相比于快速排序,在面对大型数据集时显得更有效。
因为归并排序并不需要一次装载全部数据(快速排序需要一次装入,选择分界值分割序列),而且快速排序需要不断切换子序列,这将增加内存分页,并大大减缓了算法的运行。
以上就是python归并排序和快速排序比较,希望对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。