Добро пожаловать в переполнение стека! Обычно сложность времени для алгоритма сортировки измеряется количеством выполненных сравнений ключей. Можно начать с рассмотрения того, что является входным параметром, который требует наименьшего числа сравнений ключей для полной сортировки (наилучший случай), а затем проследить за вводом, который потребует наибольшего числа (наихудший случай). Часто лучшим вариантом будет отсортированный список, а худшим - список, отсортированный в обратном порядке, хотя это может быть не так для некоторых алгоритмов «разделяй и властвуй».
Как и в среднем случае, если вы вывести лучший и худший случай, вы знаете, что среднее между двумя. Если оба имеют один и тот же класс сложности по времени (часто класс Big Oh), то вы знаете, что среднее значение одинаково. В противном случае вы можете получить его математически с помощью вероятностного анализа c.
Для каждого l oop в массиве это добавит фактор сложности времени n, а вложенные циклы "умножат" это сложность. то есть 2 вложенных цикла дают сложность n ^ 2, а 3 вложенных цикла дают сложность n ^ 3.
Разделение массива пополам многократно часто дает вам фактор сложности времени log (n) .