24小时热门版块排行榜    

查看: 1546  |  回复: 5
本帖产生 1 个 程序强帖 ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

zhenhai308

木虫 (正式写手)

某某

[交流] 【求助】关于vector运行效率问题【已完结】 已有4人参与

小弟是电路专业的,初学c++,用c++做电路功耗算法。但是电路中要处理的数据比较多,常常达到2的十几次,或者几百次。我用stl中的vector容器进行操作,经常会用到insert(),erase(),clear()等算法,而其直接用A.at()(A是vector类的对象)进行数值计算,但是我感觉代码运行时间很长,比我师兄用c写的要多4到5倍。我想请教一下c++高手,给我一点指点,不胜感激!

[ Last edited by 余泽成 on 2010-4-12 at 21:34 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhenhai308

木虫 (正式写手)

某某

谢谢!我在用list了,感觉快多了!
4楼2010-04-12 21:23:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

tjyl

金虫 (正式写手)


余泽成(金币+1, 程序强帖+1):辛苦了! 2010-04-10 23:40
zhenhai308(金币+1): 2010-04-11 12:31
这个....
C++ primer上好像就说过的吧,对于你这样主要进行数值运算,而且时间非常长,根本就不应该去用什么vector.尤其是你经常insert,当之前自动为vector分配的内存不够时,又会重新分配一个和现有的容器大小相同的空间,etc....
C++里面很多现成有用的东西,表面看起来是为了防止重复造轮子。不过肉吃多了,还是要腻的,没有什么十全十美的东西。
2楼2010-04-10 21:51:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

magic7004

金虫 (职业作家)

★ ★ ★ ★
wangen994(金币+2):感谢参与应助 2010-04-11 10:53
wangen994(金币+2):活动期间额外奖励 2010-04-11 10:53
zhenhai308(金币+1):谢谢 2010-04-11 12:31
zhenhai308(金币+1): 2010-04-12 21:23
vector其实是数组,数组是不适合频繁insert和erase的。
如果需要频繁的insert和erase,建议搂住考虑其他数据结构。
流氓不可怕,可怕的是流氓有文化,有文化又BH的流氓无敌~~!
3楼2010-04-11 09:31:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

thisisit

铜虫 (小有名气)


resonant(金币+1):感谢参与,请及时更新您的用户组。 2010-06-22 12:53:29
c++是面向对象的语言,适合做大型的设计,里面有很多包装好了的数据结构和操作,用设计好了的算法可以减少很多工作量,但对于运算量巨大的程序来说,很多都是重复的排序,插入。如果能把C++用到和C的速度差不多,那就是高手了,再接再厉,加油啊。
5楼2010-06-22 08:37:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 2026国自然函评费到账 +16 羊腰板 2026-08-21 17/850 2026-08-23 23:02 by tianxiaochun
[基金申请] 让我中一个面上吧! +12 大萍1987 2026-08-20 15/750 2026-08-23 20:44 by 大萍1987
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +4 process2012 2026-08-23 5/250 2026-08-23 19:58 by jurkat.1640
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[基金申请] 什么时候开奖? +9 CrisMessi 2026-08-18 10/500 2026-08-23 12:03 by 丶昵称占用
[基金申请] 今天放榜吗? +15 布布和一二 2026-08-19 16/800 2026-08-23 09:55 by 张春生
[基金申请] 93BebMhtakh前后11位开头都是大写 +7 且听虎啸 2026-08-17 8/400 2026-08-22 21:55 by 医学老男孩
[基金申请] 范进中举一文的中心思想 +3 炎黄贵胄 2026-08-22 4/200 2026-08-22 20:02 by mycsru
[基金申请] filecode,4个jtjc了 +13 ziyangfang 2026-08-19 16/800 2026-08-22 17:08 by WH3796
[基金申请] 放榜前的不淡定 40+4 snowwithsea 2026-08-19 14/700 2026-08-21 23:51 by cratir
[基金申请] 今日不放榜?网传国自然预计 8 月 27 日可查结果 +16 医学老男孩 2026-08-20 20/1000 2026-08-21 21:13 by Ldrop2023
[基金申请] 科研孤儿太难了 +17 我4大白菜 2026-08-20 18/900 2026-08-21 20:57 by zhangev
[基金申请] 感觉是下周放榜了 +7 angus9576 2026-08-17 12/600 2026-08-21 13:38 by weiyin
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[论文投稿] 投稿咨询 +5 wwm09 2026-08-17 7/350 2026-08-21 10:11 by 期刊论文帮手
[基金申请] 今天放榜没戏了吧 +9 yuleib84 2026-08-19 11/550 2026-08-21 10:06 by gltch
[基金申请] 估计是周四 +3 archvillain 2026-08-18 3/150 2026-08-21 01:48 by jnhyjjm
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
信息提示
请填处理意见