通常,buublesort的運行時間複雜度爲O(n^2),但下面給出的算法有一個while循環和for循環for循環取決於n,但while循環只是簡單的一個布爾值的檢查器。任何人都可以告訴我如何計算此算法的運行時間?Bubble-sort算法的分析
bool done;
done = false;
while (! done)
{
done = true;
for (i = 0 ; i < a.length-1 ; i ++)
{
if (a[i] > a[i+1])
{
// Swap a[i] and a[i+1]
temp = a[i];
a[i] = a[i+1];
a[i+1] = temp;
done = false;
}
}
}