首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >并行std:列表,根据列表B中项目的状态删除列表A中的项目?

并行std:列表,根据列表B中项目的状态删除列表A中的项目?
EN

Stack Overflow用户
提问于 2013-04-21 06:08:17
回答 1查看 100关注 0票数 0

我将如何完成以下工作?

列表A是一系列的Foos,列表B是一系列表示时间的doubles,直到列表A的i第四个位置的Foo被移除为止。也就是说,如果列表B中的双倍小于零,则从列表A中删除位于列表A中小于零双的Foo,从列表B中移除小于零的双倍。

代码语言:javascript
复制
List A:
A B C D E

List B (in seconds):
1.0 0.33 0.0 5.0 0.01

//1 tick of 0.33 seconds

List B:
0.67 0.0 -0.33 4.67 -0.32

//Remove offending List A elements based on state of List B
List A:
A B D

//Remove invalid List B elements
List B:
0.67 0.0 4.67

我正在考虑一些类似于列表B的std::remove_if的东西,但是如果我这样做,我将如何删除列表A的项目呢?遗憾的是,不同列表的迭代器是不兼容的,并且,除了使用手动实现之外,没有方法可以遍历列表并知道每个值的索引。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-21 06:13:01

您可能想要考虑使用一个结构列表而不是两个列表。然后可以使用remove_if和其他列表函数。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16128464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档