Вопросы к Поиску с Алисой
Законы сложения и умножения применяются в компьютерных алгоритмах для оценки сложности совокупности операций. gist.github.com www.yuripetrov.ru
Закон сложения гласит, что итоговая сложность двух последовательных действий равна сумме их сложностей. gist.github.com www.yuripetrov.ru Например, если есть алгоритм поиска элемента в массиве, то при полном переборе слева направо наилучшая оценка сложности будет O(1), если искомый элемент окажется в начале списка, наихудшая — O(N), если в конце списка, а средняя оценка — O(N^2). www.yuripetrov.ru
Закон умножения утверждает, что итоговая сложность двух вложенных действий равна произведению их сложностей. gist.github.com www.yuripetrov.ru Например, если есть задача поиска элемента в массиве, то при полном переборе слева направо наилучшая оценка сложности будет O(1), если искомый элемент окажется в начале списка, наихудшая — O(N), если в конце списка, а средняя оценка — O(N^2). www.yuripetrov.ru
Сложность алгоритмов обычно оценивают по времени выполнения или по используемой памяти. gist.github.com Она зависит от размеров входных данных: массив из 100 элементов будет обработан быстрее, чем аналогичный из 1000. gist.github.com