c++ primer5电子工业出版社第一版294页练习

品风无声 2014-07-30 10:32:30
c、从一个文件读取未知数量的整数。将这些数排序,然后将它们打印到标准输出。
vector、deque、list使用那种容器最为合适?
...全文
198 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
taodm 2014-08-13
  • 打赏
  • 举报
回复
都合适。deque略好。
  • 打赏
  • 举报
回复
引用 6 楼 zcdabing 的回复:
如果排序的时候要求不可使用辅助空间,楼上那些还认为vector合适? 比如用插入排序的时候,随机访问不是那么重要 个人觉得list比较合适,综合考虑
这么一个前提:先读取,再将这么数排序(和你打算要做的,读进来的时候便排序,有不少出入吧) 你还认为合适么?
zcdabing 2014-07-31
  • 打赏
  • 举报
回复
如果排序的时候要求不可使用辅助空间,楼上那些还认为vector合适? 比如用插入排序的时候,随机访问不是那么重要 个人觉得list比较合适,综合考虑
water-moon 2014-07-31
  • 打赏
  • 举报
回复
如果一边输入一边排序,则采用list合适,如果先读入所有的整数,然后排序,则用vector合适,因为进行排序最好有随机访问的能力。
神奕 2014-07-31
  • 打赏
  • 举报
回复
vector最合适
oiooooio 2014-07-31
  • 打赏
  • 举报
回复
list:对于你的未知数量再好不过,list插入相当快 vector:是数组形式 deque:这个特殊需求用的
  • 打赏
  • 举报
回复
楼上已经给出了答案,我再补充一些: vector对应数组,访问任意元素都很方便,效率也不错 deque,双端队列,对端元素访问比较快,任意元素访问效率不高 list,链表,访问任意元素效率最低。 因为排序会需要访问任意元素,所以,选择vector这种。
  • 打赏
  • 举报
回复
你首先要要知道,这几个容器的区别 vector对应数组,访问任何元素都很方便 deque,双端队列 list,链表 根据你的前提,vector应该是最合适的

64,318

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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