查询较多使用哪个容器

aled6825 2009-05-17 09:42:56
目前有一案例
项目需求较多的查询(find),少量的插入/删除/修改
请教各位,一般采用哪种容器较好,vector? deque? 或者其他较好的容器?
...全文
121 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
liao05050075 2009-05-19
  • 打赏
  • 举报
回复
你这个可以使用map来做
定义一个map<unsigned long,stA*>,以dwB做为Key就可以了
aled6825 2009-05-19
  • 打赏
  • 举报
回复
类似结构如下

struct stA
{
unsigned long dwB;
char szC[20];
...
bool operator==(const stA& B)
{
if(dwB == B.dwB) return true;
else return false;
}
...
}


这里就是根据dwB查询是否存在
aled6825 2009-05-19
  • 打赏
  • 举报
回复
查询的是一个dword值.
判断它相同就认定是查询量是存在的

楼上有什么新解么
绿色夹克衫 2009-05-19
  • 打赏
  • 举报
回复
不知道LZ的查询要求是什么,是针对哪个属性的?
aled6825 2009-05-19
  • 打赏
  • 举报
回复
看出区别了

map虽然是链表的内存结构,但是是有序的红黑树,加快了检索
vector是连续的内存结构,可以加快寻址.但是没有进行序列化,相应的检索难度大了点

不过如果size在50以下的话,感觉两者区别不大,甚至更少的话,序列容器的检索速度更优
然否
anhongsen521 2009-05-18
  • 打赏
  • 举报
回复
ding
lylm 2009-05-17
  • 打赏
  • 举报
回复
200个不会影响性能
aled6825 2009-05-17
  • 打赏
  • 举报
回复
楼上
我的容器要封装的是一个简单的struct,包含几个字串与几种重载的运算符
元素个数大约在200以内,这样的状况使用类是链表的关联容器是否会降低检索效率?
diannaomingong 2009-05-17
  • 打赏
  • 举报
回复
map,set

33,028

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧