Простыми словами
Одна операция может быть дорогой, хотя длинная последовательность в среднем остаётся дешёвой. Например, динамический массив иногда копирует все элементы, но большинство добавлений выполняет почти бесплатно. Амортизированный анализ распределяет редкие большие затраты по множеству операций, поэтому показывает гарантированную среднюю стоимость без предположения о случайных входах.
Пример при разработке
Добавление элемента в динамический массив обычно дешёвое, но иногда требует копирования всего массива. Если смотреть на длинную серию операций, редкие дорогие расширения распределяются между многими дешёвыми.
Это редакционный пример применения, а не часть определения или доказательство концепции.Механизм действия
Сначала проверяют, есть ли исходное условие из определения. Затем смотрят, как оно влияет на структуру компонентов, потоки данных, ограничения и действия участников. Если эту связь не удаётся наблюдать, принцип не стоит использовать как готовое объяснение.
Пример в работе
Сразу приклеить к ситуации название принципа и выбрать решение, не проверив его условия и границы применимости.
Сначала описать конкретную ситуацию, затем проверить условия принципа и только после этого выбирать действие. После изменения сравнить ожидаемый результат с фактическим.
Ограничения
«Амортизированный анализ» объясняет только часть происходящего в области «Алгоритмы». Сам принцип не говорит, насколько сильным будет эффект в вашем случае, и не заменяет измерения. При другом масштабе, среде или временном горизонте результат может отличаться.
Источник
Robert E. Tarjan, “Amortized Computational Complexity”, 1985.