首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

顺序表操作

输入格式 第一行输入一个正整数 mm(1 \leq m \leq 1001≤m≤100),代表一共有 mm 个操作。 接下来输入 mm 行,每行首先输入一个整数 tt,分别代表以下操作: t = 1,代表插入操作,输入两个整数 a 和 b(1000≤a,b≤100),表示在 a 的位置上擦入元素 b,如果插入成功输出success,否则输出failed。 t=2,代表删除操作,输入一个整数 a(1000≤a≤100),删除位置 a上的元素,如果删除成功输出success,否则输出failed。 t=3,代表查找操作,输入一个整数 a(1000≤a≤100),查找元素值为 a 的元素,如果查找成功输出success,否则输出failed。 t=4,代表遍历操作,输出当前顺序表的所有元素。 输出格式 对应每个操作,输出结果。对于前三个操作,如果操作成功输出success,否则输出failed;对于第四个操作,从下标为 00 的位置开始输出当前顺序表的所有元素,每两个整数之间一个空格,最后一个整数后面没有空格。

02

Vector shrink 请求容器降低其容量和size匹配 shrink_to_fit();

resize(),设置大小(size); reserve(),设置容量(capacity); size()是分配容器的内存大小,而capacity()只是设置容器容量大小,但并没有真正分配内存。 打个比方:买了一个新房子,新房子里可以放3张床reserve(3),这是说房子的容量是最多放3张床,但是屋里并不是有三张床,二resize(3),房里安装了3张床,此时房里的床可以使用了。 reserve为容器预留足够的空间,避免不必要的重复分配,分配空间大于等于函数的参数,影响capacity。但reserve的功能确实蹩脚,只能用reserve是的capacity变得比之前大。 resize调整容器中有效数据区域的尺寸,如果尺寸变小,原来数据多余的截掉。若尺寸变大,不够的数据用该函数第二个参数填充,影响size。 由于vector是顺序容器,在内存中分配了一块连续的存储空间。为了保证动态添加元素的高效率,因此必须预先为vector分配一段空间,这个空间就是capacity。 而容器中元素的个数就是size(),在容器中,capacity总是大于等于 size; 当vector数组插入数据量过大时,其capacity,会变得很大,且清空vector容器后,还会保留原分配的容量capacity。系统不会自动收回空间吗?真的不会!!!! 我们一点一点写程序把risize()跟reserve()弄那个明白。

02

学以致用C++设计模式 之 “中介模式”

这两天啊,我是又当代理又当中介的,给我累得,都没怎么学习。 代理啥呀?用我的一技之长,处理客户的需求嘛。但是吧,我从小受到的教育告诉我,要解放自己的时间,即时你不知道那些时间该干嘛,先解放出来再说。于是我就去干中介了。 这中介是怎么干呢?挖掘一堆的客户,收集客户需求;聚拢一群代理,向他们发放客户需求。这是初级的。 当撮合了一对一对之后呢? 当然就要充当他们一对一的中间人了,既不能让他们之间互相起交集(说多了都是泪,两年前我让他们起交集,然后,我就成多余的了),又不能让他们之间的消息通不了。又得盯着发单方跑路不结账,又得看着接单者每天完成任务。 难喏。

03
领券