插入和冒泡排序的平均案例复杂性分析

时间:2017-11-26 14:38:28

标签: algorithm sorting time-complexity

这个网站已经有一些关于这个主题的问题,但在阅读了一些答案之后我很困惑。

https://cs.stackexchange.com/questions/20/evaluating-the-average-time-complexity-of-a-given-bubblesort-algorithm

在上面的链接中,“Joe”回答说平均冒泡排序的数量与平均反转次数相同,即(n)(n-1)/ 4。

但是,Insertion sort vs Bubble Sort Algorithms表示在冒泡排序中,平均交换次数为n ^ 2/2,插入排序为n ^ 2/4,这就是插入排序优于冒泡排序的原因。< / p>

哪一个是正确的?有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

假设统一分布,您的第一个链接会计算预期的反转次数(即掉期)。

您的第二个链接是计算迭代次数,即检查元素。

两者都是正确的。