@kot-samolet

Как рассчитать сложность алгоритма?

Например, программа анализирует текст и извлекает из него 5 параметров, они складываются в массив. На следующем этапе идёт обработка списка таких массивов, и при обработке каждого требуется найти максимальный элемент, т.е. сначала пробежаться по массиву.

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

В данном случае можно ли математически рассчитать быстрее будет работать варивант с предварительно отсортированным массивом или не отсортированным и как это сделать? (примем что условия выполнения и данные абсолютно одинаковые)
  • Вопрос задан
  • 471 просмотр
Пригласить эксперта
Ответы на вопрос 2
@res2001
Developer, ex-admin
Допустим при создании массива из 5 элементов можно добавить if и добавлять значение в начало или конец массива

Ну одним IF тут не обойтись и не обязательно в начало или в конец добавлять, что варианта добавления между элементами вы не рассматриваете? Это когда в массиве только 1 элемент - будет 1 if. Но и с одним элементом есть проблема - в какое место в массиве вы его поместите изначально, ведь вы, в общем случае, не знаете какие дальше будут элементы.
Короче - оно примерно то на то и выйдет. Только если в варианте с последующей сортировкой, у вас есть алгоритм быстрой сортировке, то в варианте постоянно отсортированного массива - не известно на сколько хорошо вам удастся это реализовать.
И не ясно на каком ЯПе вы все это делаете.
Ответ написан
Комментировать
@syrov
пишу программы до 99 строк
Давайте попробуем, напишите псевдокод.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы