Each operation is proportional to the size.
If you have a loop that concatenates fixed-size tensors in each iteration, then you have “iters * fixed” which is linear in the iters.
If you have a loop that grows a tensor linearly by repeated concatenation, you have something like fixed + 2 * fixed + 3 * fixed + … + iters * fixed = fixed * iters * (iters + 1) / 2.