只用一个循环排序。帮助我提高效率

时间:2012-11-12 08:26:09

标签: c arrays sorting

我想出了一个新的排序算法,其中只有一个while循环,但我没有 知道如何在最佳,平均和最差的情况下计算它的效率,所以请帮我计算它 循环以i = 1开始,并且while循环的结束条件是i <= n-2,并且有时i的值在循环中增加,并且有时i值将基于某些条件递减。

我想如果你通过简单的例子说明我会更好地理解。 请帮帮我............
提前感谢那些帮助我的人......

1 个答案:

答案 0 :(得分:2)

  

有时我的价值会根据某些条件递减

这种模糊性使得无法分析。如果“condition”始终为true且i递减为零,则循环将永远运行。因此,根据您的说法,时间复杂度可以是Theta(n)到无穷大。

计算时间复杂度的方法是计算(或设置上限)执行的操作数,作为n的函数。在排序的情况下,“操作”通常意味着比较和复制/移动,但如果您的算法做了任何异常,那么当然必须包括它。