交换排序和气泡排序有什么区别?它们是一样的吗?



我有点像算法中的菜鸟,所以我一直在研究分类算法。我知道气泡排序与将一个值与邻居进行比较有关,如果左侧的值大于右侧,则交换了。复杂性是O(n^2)。我遇到了交换排序,它似乎具有相同的特征和算法。我曾尝试对交换排序进行研究,但是我得到的结果有限,它们是矛盾的。那是一样的吗?

气泡是否排序一种交换类型,还是相反的方式?

如果它们不同,哪些特征使它们与众不同?

唯一的区别是它们比较元素,气泡排序通过列表和交换元素。交换排序将一个元素与所有其他元素进行比较。

因此,当我们用气泡排序对数组进行排序时,我们将数组[n]与数组[n 1]进行比较。使用Exchange排序,我们将数组[1]与数组[2],Array [3] ...阵列[k]进行比较,然后在第一次通过,然后用数组[3],数组[4] ...[k]在第二次通过等

交换算法可视化-https://www.youtube.com/watch?v=v0ipy1h -tpm

最新更新