• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

КАК ПОСЧИТАТЬ ЁМКОСТНУЮ СЛОЖНОСТЬ?

  • Автор темы Blade
  • Дата начала
Статус
Закрыто для дальнейших ответов.
B

Blade

Подскажите, пожалуйста, что такое емкостная сложность и как её расчитать. Как я понял, это размер памяти, занимаемый программой, но ведь это не просто сумма размеров переменных.
Спасибо!

Если надо, могу программу выложить.
 
G

grigsoft

Не уверен на 100%, но обычно это примерная оценка зависимости занимаемой памяти от размерности задачи. Скажем, тебе надо обработать массив из N элементов. Если дополнительных построений ты не используешь, то это будет O(N). Если для решения задачи тебе надо еще построить матрицу NхN, то будет уже O(N^2).
Вообще гугли на "емкостная сложность" - там вполне вменяемые ссылки, типа
 
B

Blade

А как быть если в программе более 10 функций?
Что-то типа этого:
Код:
float func1 (float *dP)
{
float F=0;
for(int n=0;n<16;n++)
F+=dP[n]*dP[n];
f/=16;
return(F);
 
G

grigsoft

Если верить ссылке, то
можно определить функцию емкостной сложности ПАМЯТЬ (n), дающую границу для максимального числа одновременно существующих скалярных значений при выполнении $A$ на входных данных размером $n$.

Так что без разницы сколько там функций - вопрос сколько памяти может быть занято по максимуму.

Как оформить? а я откуда знаю? :) Так и напиши: в соответствии с алгоритмом емкостная сложность равно O(N).
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!