Why is append to a dynamic array amortized O(1)? | LetsGit.IT