Технологии

Решено

big-O notation - вопрос №327077

здравствуйте. 
подскажите, как можно выполнить оценивание метода по big-O notation? т.е. у меня есть программа и мне нужно подсчитать количество операций (время), требуемое на ее выполнение и использовать при этом big-O notation.

программа на c#

август 11, 2012 г.

  • Всего ответов: 1

  • Андрей FaceOff - аватарка

    Андрей FaceOff

    1-й в Технологиях

    «О большое» это оценка сложности (времени исполнения) алгоритма в зависимости от некоего параметра

    http://ru.wikipedia.org/wiki/O-%D0%BD%D0%BE%D1%82%D0%B0%D1%86%D0%B8%D1%8F

     

    условно можно сказать что О это типовой набор операций, который придется повтороть f(n) раз, для нахождения результата алгоритма

    наиболее иллюстративный пример это описание трудоемкости алгоритмов факторизации целых чисел в зависимости от их разрядности

    http://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D1%86%D0%B5%D0%BB%D1%8B%D1%85_%D1%87%D0%B8%D1%81%D0%B5%D0%BB  

    менее впечатляющий, но не менее часто встречающийся пример — оценка скорости алгоритмов сортировки в зависимости от размеров массива

    http://ru.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D1%81%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B8 

    можно сказать что О это операция. но надо понимать что это не оператор программы, это может быть весма сложный набор операторов языка программирования

    это одна повторяемая операция, это одна итерация в циклическом алгоритме

    не имеет значения язык на котором Вы реализуете алгоритм

    имеет значение количество циклов его повторения в зависимости от какой то численной характеристики входных данных и формула, которая позволяет предсказать сколько раз надо выполнить циклические проходы алгоритма (в том числе это могут быть разные по функциональности ветви алгоритма или произведение количества вложенных циклов)

    при этом формула может быть как строго доказанной, так и эмпирической, если доказательство не известно

    так что Ваша задача носит в первую очередь математический характер а не програмно-технический

    август 11, 2012 г.
    Ответ понравился автору
    Лучший ответ по мнению автора

Похожие вопросы

Решено

Заполнение dataGridView данными из array

ноябрь 25, 2011 г.

Технологии