stl中有什么函数能实现元素移动?

xumengg 2003-05-03 10:24:49
比如list<int> b 中有0,1,2,3,4,5
我想改变b的顺序,使之成为 5,0,1,2,3,4,有什么函数吗?
...全文
31 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
fangrk 2003-05-03
  • 打赏
  • 举报
回复
agree with SwordMan2001(天笑2001)
SwordMan2001 2003-05-03
  • 打赏
  • 举报
回复
cnss(大黄蜂)写的不错, 但是别忘了 list不支持随机迭代子

list<int>::iterator it=b.end();
it--;
rotate(b.begin(), it, b.end());
这样应该可以了

如果是vector等支持 b.begin() + 5这样写法的容器,就可以直接用
rotate(b.begin(), b.begin() + 5, b.end());
了.
cnss 2003-05-03
  • 打赏
  • 举报
回复
include<algorithm>

rotate(b.begin(), b.begin() + 5, b.end());

24,853

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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