Is there a difference between append and insert at the end of a list? Is insert at the end of a list a constant time operation?
nums = [1, 2, 3]
nums.append(4) # Time complexity: O(1)
nums.insert(len(nums), 5) # Time complexity: O(?)
According to the TimeComplexity article in the Python Wiki, the average case for append is O(1), while the average case for insert is O(n). However, in the Python tutorial, it is mentioned that:
... and
a.insert(len(a), x)is equivalent toa.append(x).
I'm unsure if "equivalent" there means "equivalent in functionality" or "equivalent in time complexity". Does anyone know?