我想比较两个对象向量元素并相应地获取同一对象的其他向量元素。例如,对象有一个向量; foo1.a=[4 2 1 3] foo2.a=[2 1 4]
我想找到相同的元素,然后根据我从foo.a
得到的发现,相应地得到其他向量包含,如foo1.b=[8 8 2 10]
和foo2.b=[8 2 8]
。我试图比较循环中的两个向量,然后得到相同的结果,但是我失败了。如何比较同一对象的两个向量并获取其他元素
3
A
回答
3
给定两个向量:
std::vector<int> v1; // {4, 2, 1, 3};
std::vector<int> v2; // {2, 1, 4};
首先,sort
两个向量,使得它很容易找到共同的要素:
std::sort(v1); // {1, 2, 3, 4}
std::sort(v2); // {1, 2, 4}
使用set_intersection
找到共同的元素:
std::vector<int> vi;
std::set_intersection(v1.begin(), v1.end(), v2.begin(), v2.end(), vi.begin()); // {1, 2, 4}
使用set_difference
找到唯一元素:
std::vector<int> vd;
std::set_difference(v1.begin(), v1.end(), v2.begin(), v2.end(), vd.begin()); // {3}
+0
问题不仅在于找到两个向量或集合的交集或差异。然后我们应该在b中找到相应的元素来分配其他向量。 – 2013-02-15 15:57:35
相关问题
- 1. 比较向量值:1个元素与其他所有其他
- 2. 比较两个向量的元素
- 3. 比较两个列表并获取相同元素的索引
- 4. 如何比较两个向量元素使用循环元素
- 5. 比较两个std :: list列表并获取不同的对象
- 6. 比较同一类的两个对象
- 7. 获取从对象元素,并与阵列比较 - Jquery的
- 8. 如何取对应的两个元素中较大的一个,每个元素来自一个向量
- 9. 如何比较一个NSMutableArray的每个对象与其他
- 10. 如何比较两个对象数组来检查一个数组元素与其他数组的所有值?
- 11. 比较数组一个元素在同一阵列中所有其他元素
- 12. 如何两个对象比较对象
- 13. 比较两个JSON对象和删除的元素,然后所得的JSON比较其他JSON文件
- 14. 使用AutoMapper创建一个对象,它代表比较其他两个对象
- 15. 比较我db4o中的一个对象与其他新对象
- 16. 指向同一个Integer对象的变量之间的比较
- 17. 比较列表的元素对所有其他元素
- 18. Java如何将一个数组的元素与同一个数组的所有其他元素进行比较
- 19. 如何比较同一类型的两个对象的“状态”?
- 20. 比较字符串对象相当于向量中的元素
- 21. 比较两个不同对象的值
- 22. 比较两个不同列表中的元素是不同的对象
- 23. 如何比较两个向量,在C++
- 24. 比较两个对象的第一个属性并合并
- 25. 如何阵列的javascript对象比较与其他对象
- 26. 比较两个向量
- 27. C++:比较两个向量
- 28. 比较两个向量
- 29. 比较两个向量C++
- 30. 如何比较同一个表中的一个元素到另一个元素
我不明白。你想比较两个向量元素?还是两个向量?你如何生成结果向量? – jogojapan 2013-02-15 05:46:51
圣洁的废话,一段很难解析... – thang 2013-02-15 05:48:18
比较'a'向量,如果他们有相同的元素从'b'向量获得相同的索引元素。如果它们不同,我也想在'b'中得到相应的索引元素。正如你所看到的,两个'a'向量有一些相同的元素,我不想两次获得相同的元素。 – 2013-02-15 05:52:02