У меня простая функцияУлучшить tempral сложность алгоритма
bool function(int*a,int n)
{
for(int i = 0; i<=n-1;i++)
if(a[i]==i)
return true;
return false;
}
, где a
является отсортированный вектор, который содержит различные элементы и п является размер вектора.
Мне нужно улучшить временную сложность этого алгоритма. Моя первая мысль заключалась в использовании бинарного поиска, но я могу выяснить, как сделать рекурсию работой в этом случае. В основном функция проверяет наличие элемента в отсортированном массиве, для которого индекс равен элементу.
«улучшить временную сложность»? Вы имеете в виду «уменьшить асимптотическое время выполнения»? – duskwuff
@ duskwuff yes ... что-то вроде этого –
Вы пытались изменить настройки оптимизации компилятора? –