Разница между формальным и эмпирическим подходом к изучению алгоритмов заключается в используемых методах и целях исследования:
- Формальный подход предполагает использование специальных методов математического анализа алгоритмов, целью которого является установление свойств функции сложности изучаемого алгоритма. 7 Формальное описание алгоритмов даёт возможность иметь общие инструментарии для сравнения, оценки, преобразования и других действий над ними. 8
- Эмпирический подход заключается в экспериментальном изучении свойств функции сложности путём проведения соответствующих расчётов с использованием специальных методик. 7 Например, замеряются временные промежутки или подсчитывается число критических операций или групп операций. 7
У каждого из этих подходов есть свои плюсы и минусы: 7
- Математический анализ позволяет получить результаты, которые носят общий, фундаментальный и строгий характер. 7 Однако сам процесс математического анализа заданного алгоритма может быть весьма сложным, он требует непростой техники построения математических доказательств. 7
- Экспериментальный подход применим к намного более широкому кругу алгоритмов, однако получаемые результаты не имеют такого уровня общности и строгости, как в случае математического анализа. 7 В качестве предварительного исследования алгоритма экспериментальный подход вполне уместен и полезен. 7