我看着STL容器,试图弄清楚它们到底是什么(即使用的数据结构),这让我停住了脚步:我一开始以为它是一个双向链表,它允许在固定时间内从两端插入和删除,但我被操作符[]的the promise made在固定时间内完成而困扰。在链表中,任意访问应该是O(n),对吗?
如果它是一个动态数组,它怎么能在固定时间内add elements呢?值得一提的是,可能会发生重新分配,O(1)是摊销成本,like for a vector。
所以我想知道这个结构是什么,允许在固定的时间内任意访问,同时永远不需要移动到一个新的更大的地方。
https://stackoverflow.com/questions/6292332
复制相似问题