我想比較兩個對象向量元素並相應地獲取同一對象的其他向量元素。例如,對象有一個向量; 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. 比較兩個列表並獲取相同元素的索引
- 2. 比較同一類的兩個對象
- 3. 獲取從對象元素,並與陣列比較 - Jquery的
- 4. 如何取對應的兩個元素中較大的一個,每個元素來自一個向量
- 5. 比較兩個JSON對象和刪除的元素,然後所得的JSON比較其他JSON文件
- 6. 指向同一個Integer對象的變量之間的比較
- 7. 比較列表的元素對所有其他元素
- 8. Java如何將一個數組的元素與同一個數組的所有其他元素進行比較
- 9. 如何比較同一類型的兩個對象的「狀態」?
- 10. 比較兩個不同對象的值
- 11. 如何比較兩個向量,在C++
- 12. 比較兩個對象的第一個屬性併合並
- 13. 比較兩個向量
- 14. C++:比較兩個向量
- 15. 比較兩個向量C++
- 16. 如何陣列的javascript對象比較與其他對象
- 17. 如何比較同一個表中的一個元素到另一個元素
- 18. 比較兩個陣列並打印匹配元素的數量
- 19. 如何使用其他元素屬性獲取同一級別元素的值
- 20. 如何從ajax調用中分別獲取兩個對象並進行比較?
- 21. 比較數組中的元素並獲取新元素
- 22. 如何獲取並比較Postgres中jsonb數組的元素?
- 23. 如何比較兩個數組對象
- 24. 如何打字比較兩個對象?
- 25. 如何比較兩個對象數組
- 26. 如何比較兩個複雜對象?
- 27. 我如何比較兩個對象
- 28. 如何比較兩個Struct對象?
- 29. 獲取其他元素內的元素
- 30. MATLAB - 如何比較兩個對象是相同還是不同
我不明白。你想比較兩個向量元素?還是兩個向量?你如何生成結果向量? – jogojapan 2013-02-15 05:46:51
聖潔的廢話,一段很難解析... – thang 2013-02-15 05:48:18
比較'a'向量,如果他們有相同的元素從'b'向量獲得相同的索引元素。如果它們不同,我也想在'b'中得到相應的索引元素。正如你所看到的,兩個'a'向量有一些相同的元素,我不想兩次獲得相同的元素。 – 2013-02-15 05:52:02