В следующей функции C++ пусть n> = m.Сложность времени следующей функции
int gcd(int n, int m) {
if (n%m ==0) return m;
if (n < m) swap(n, m);
while (m > 0) {
n = n%m;
swap(n, m);
}
return n;
}
Какова временная сложность вышеуказанной функции, предполагающей n> m? Ответ на этот вопрос - O (log n), но я не понимаю, как он рассчитан?
Вы никогда не показывал нам определение 'swap'. –
@TimBiegeleisen swap - это обычная функция для обмена значениями – dexter
@dexter Спасибо ... Я подозревал это, но поскольку я не являюсь человеком на С ++, я спросил. –