Amortized means “average cost per operation over a whole sequence”, even if some single operations are expensive. In a dynamic array, most appends are O(1), and once in a while you pay O(n) to resize/copy—spread across many appends it becomes O(1) amortized.