Vector与deques的差别

相同之处:                                                                                                                                                                          1. 在中段部分安插、移除元素的速度较慢,因为所有元素都需要移动以腾出或填补空间。                                 2.迭代器属于radom access iterator(随即存取迭代).                                                                                           不同之处                                                                                                                                                                       1.deques两端都能快速的安插和移除元素,而vector却只能在尾部进行操作。这些操作可在分期摊还的常数时间(anortized constant time)内完.                                                                                                                           2.存取元素时,deque内部结构会多一个间接过程,所以元素的存取和迭代器的动作会稍慢一些。      3.deque迭代器需要在不同的区域间跳转,所以必须是特殊的职能型的指针,非一般指针。                               4.对于内存区块有所限制的系统(如PC系统),deque可以含有更多的元素,因为它使用不止一块内存,因此deque的max_size()可能更大。                                                                                                                              5.deque的内存区域在不被使用时会被释放。deque的内存大小是可以缩减的。但到底是不是这样做,依赖于实际的编译环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值