好的,我正在尝试理解大 O 的概念。我有一个功能,我想找到大 O,但我不是很“明白”,这是书中的一个例子,就像我的家庭作业一样。我知道答案是 O(nk),但有人可以用简单的术语把它分解一下,这样我可能会更好地理解。
int selectkth(int a[], int k, int n)
{
int i, j, mini, tmp;
for (i=0; i < k; i++)
{
mini = i;
for (j = i+1; j < n; j++)
{
if (a[j] < a[mini])
mini = k;
tmp = a[i];
a[i] = a[mini];
a[mini] = tmp;
}
}
return a[k-1];
}