第9回---第20回

第9回

下图中,被注释的这种语句写法是要避免的(避免存储end操作返回的迭代器

注意:list和deque  既可以在前面insert数据也可以在后面insert数据

vector只能在后面insert数据

第10回

如下图,容器与容器相互比较的前提是:必须是同类型的容器才能比较,而且容器中的数据类型也必须一样

第11回

第12回

注意,链表没有下标操作

第13回

第14回

注意:使用 = 进行赋值,c1和c2的类型必须一样,使用assign进行赋值,则类型兼容即可

第15回

数组的优点是具有下标,方便查找与操作,缺点是大小固定,一旦数组大小确定了,那么数组大小就不能再更改了

对于向量,每次扩大容量都是要创建新的数组,然后把旧的数组中的内容拷贝到新的数组中来,这个过程比较费时间,为了避免频繁的重复这一个过程,所以容量扩大过程中,每次扩大的数组的容量会越来越大

注意:上图中,第一个框表示向量的大小(向量里放了多少个数,大小就是多少)

第二个框表示向量的容量(容量是指这个向量最多可以放多少个数,当“大小”=“容量”时,向量会自动扩大容量,且扩大的容量数会越来越大)

下图函数作用为快速扩充向量容量

第16回 

比较:

push_back: list的push_back永远都很快,而vector的push_back有时候比较慢(前期)

insert:list的insert非常快,而vector的insert比较慢,因为vector每次插入都要将插入点后的所有数据向后移动,而对链表进行insert时,只需要动态创建1个节点,然后把前面的指针指向这个新节点即可(如下图)

erase(删除):vector的erase很慢,但list的erase很快

排序:vector可以借助下标进行“快速排序”,而list没有下标,不能进行“快速排序”,所以vector排序速度快;vector可以进行二分查找,但list不能进行二分查找

具体来说,如果需要在容器中间进行插入、删除数据,则使用list,否则使用vector

deque既可以push_back也可以push_front,而vector只能在后端进行push,但是,deque的所有操作都要比vector要慢,deque的优点:由于内部是分区存放的,所以可以保存的数据比vector大得多

第17回

C语言中表示字符串的方法,字符串最后是一个  \0

C语言中表示字符数组的方法,最后没有  \0  

第18回

字符串也可以直接使用下标(如下图)

第19回

其他顺序容器都没有上图中的操作

第20回

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值