插入排序与选择排序

作者: Laura McKinney
创建日期: 4 四月 2021
更新日期: 14 可能 2024
Anonim
【排序算法精华1】选择排序、冒泡排序、插入排序
视频: 【排序算法精华1】选择排序、冒泡排序、插入排序

内容

插入排序和选择排序之间的主要区别在于,在插入排序中,通过将数据插入已排序的列表中来对数据进行排序,而在选择排序中,数据是通过将连续元素放在已排序的位置来进行排序的。


排序是编程中非常重要的概念。在编程中有很多用于排序的算法。两种最著名的排序算法是插入排序和选择排序。这两种算法互不相同。在插入排序中,通过将数据插入已排序的列表中来对数据进行排序。一次只能将一个元素插入排序数组中。插入排序的主要目的是按正确的顺序在正确的位置插入元素。这些插入之后,将对整个列表进行排序。

为了获得更好的性能,不使用插入排序算法,但是代替冒泡排序的算法是选择排序算法。选择排序是一种选择最大编号并与最后一个编号交换的排序算法。在选择排序中,我们选择一个数字,然后根据需要选择该数字,无论是升序还是降序。

内容:插入排序和选择排序之间的区别

  • 比较表
  • 插入排序
  • 选择排序
  • 关键差异
  • 结论
  • 解释性视频

比较表

基础插入排序选择排序
含义在插入排序中,通过将数据插入已排序的列表中来对数据进行排序在选择排序中,通过将连续元素放在已排序的位置来对数据进行排序。
算法 插入排序是一种稳定的算法。选择排序是一种不稳定的算法。
立即数据 插入排序无法处理即时数据插入排序不能立即处理。
时间复杂度 在插入排序时间的情况下,复杂度为0(n)在选择排序时间的情况下,复杂度为0(n ^ 2)

插入排序

在插入排序中,通过将数据插入已排序的列表中来对数据进行排序。一次只能将一个元素插入排序数组中。插入排序的主要目的是按正确的顺序在正确的位置插入元素。这些插入之后,将对整个列表进行排序。在插入排序中,我们需要两组数组,这两个数组中的一组已排序,而另一组未排序。有一个循环一直持续到对数组排序为止。


选择排序

为了获得更好的性能,不使用冒泡排序算法,但是代替冒泡排序的算法是选择排序算法。选择排序是一种选择最大编号并与最后一个编号交换的排序算法。在选择排序中,我们选择一个数字,然后根据需要选择该数字,无论是升序还是降序。

关键差异

  1. 在插入排序中,通过将数据插入已排序的列表中来对数据进行排序,而在选择排序中,数据是通过将连续元素放在已排序的位置来进行排序的。
  2. 插入排序是一个稳定的算法,而选择排序是一个不稳定的算法
  3. 插入排序不能处理立即数据,而插入排序不能处理立即数据。
  4. 在插入排序时间的情况下,复杂度为0(n),而在选择排序时间的情况下,复杂度为0(n ^ 2)。

结论

在上面的这篇文章中,我们看到插入排序和选择排序与实现之间的明显区别。

解释性视频