Я новичок в программировании, и я пытаюсь выяснить, как вычислить алгоритмы Big O алгоритмов. Например:Calculating Big O
int selectkth(int a[], int k, int n){
int i, j, mini, temp;
for(i=0, i < k, i++){
mini = i;
for(j = i+1; j < n; j++)
if(a[j] < a[mini])
mini = j;
temp = a[i];
a[i] = a[mini];
a[mini] = temp;
}
return a[k-1];
}
Я знаю, что есть 9 шагов, происходящие здесь, и что вложенные циклы, как предполагается, должны быть умножены вместе. Я получил O (n^2), когда я впервые попытался, но я не думаю, что это правильно. Может кто-нибудь объяснить, как правильно рассчитать Big O упрощенным способом для новичков, подобных мне? Любое объяснение поможет или ваши собственные примеры. Спасибо :)
проверить мой ответ извините, я поместил комментарий по ошибке –