Explain, in particular, why insertAtRank and removeAtRank both run in linear time.