快速排序与合并排序

作者: Laura McKinney
创建日期: 4 四月 2021
更新日期: 14 可能 2024
Anonim
排序算法:插入排序,快排,归并排序【数据结构和算法入门3】
视频: 排序算法:插入排序,快排,归并排序【数据结构和算法入门3】

内容

内容:快速排序和合并排序之间的区别

  • 主要区别
  • 比较表
  • 快速分类
  • 合并排序
  • 关键差异
  • 结论
  • 解释性视频

主要区别

快速排序和合并排序之间的主要区别在于,快速排序是用于数组的排序算法,而合并排序是适用于除法规则的排序算法。


排序是按照任何顺序排列元素;排序是计算机编程中最重要的概念之一。用于排序目的的两个最重要的算法之一是快速排序,快速排序是在数组上使用的排序算法,另一种是合并排序,它是适用于除法规则的排序算法。两种算法的工作原理相同,但是它们的代码不同,因此它们是不同的。在快速排序中,枢轴元素用于排序,而在合并排序中,枢轴元素执行排序。

快速排序算法最适合短数组的快速排序;元素被数组划分,直到不再发生划分为止。快速排序的另一个名称是分区交换排序。有一个关键元素负责将元素定位在数组中。关键元素被称为枢轴。在快速排序算法中,选择数组的第一个元素,然后将所选元素设为键。两个指针分别是低指针和高指针,低指针= 2,高指针= n。低指针增加为(>键)。另一方面,上指针递减为(

合并排序是一种适用于除法规则的排序算法。数组分为两部分,然后再次划分,直到无法进行更多划分为止。合并排序可减少排序时间。在合并排序中使用三个数组,一个数组用于排序数组的一半,第二个数组用于存储另一半,而final数组用于存储final和sorted列表。合并排序的代码将说明合并排序和快速排序的工作和区别。


比较表

基础快速分类合并排序
含义快速排序是用于数组的排序算法。

合并排序是适用于除法规则的排序算法。

 

复杂 快速排序的时间复杂度为0(n ^ 2)合并排序的时间复杂度为0(n log n)
效率退出排序算法比合并排序效率低。合并排序算法比快速排序更有效。
排序方式 快速分类的分类方法是内部的。合并排序的排序方法是外部的。

快速分类

快速排序算法最适合短数组的快速排序;元素被数组划分,直到不再发生划分为止。快速排序的另一个名称是分区交换排序。有一个关键元素负责将元素定位在数组中。

关键元素被称为枢轴。在快速排序算法中,选择数组的第一个元素,然后将所选元素设为键。有两个指针,分别是低指针和高指针,低指针= 2,高指针= n。低指针增加为(>键)。另一方面,上指针递减为(


合并排序

合并排序是一种适用于除法规则的排序算法。数组分为两部分,然后再次划分,直到无法进行更多划分为止。合并排序可减少排序时间。

在合并排序中使用三个数组,一个数组用于排序数组的一半,第二个数组用于存储另一半,而final数组用于存储final和sorted列表。合并排序的代码将说明合并排序和快速排序的工作和区别。

关键差异

  1. 快速排序是用于数组的排序算法,而合并排序是用于除法和征服的排序算法
  2. 快速排序的时间复杂度为0(n ^ 2),而合并排序的时间复杂度为0(n log n)。
  3. 退出排序算法比合并排序效率低,而合并排序算法比快速排序效率更高。
  4. 快速排序的排序方法是内部的,而合并排序的排序方法是外部的。

结论

在上面的这篇文章中,我们看到了快速排序和合并排序之间的明显区别。

解释性视频