gpt4 book ai didi

c++如果它们共享一个数字,则组合 vector

转载 作者:太空宇宙 更新时间:2023-11-04 13:24:21 25 4
gpt4 key购买 nike

所以我有 13 个不同的 vector ,其中包含一组数字。我想合并共享数字的 vector ,并删除重复项。示例:如果我组合集合 0 和 1,我不希望有两个 2。

它们的排序方式始终是它们的排序方式,因此数字 2 不会出现在第二组之后,但可以出现在它之前。数字有序等

我很困惑该怎么做。

The sets: 
Set 0: [0,2]
Set 1: [1,2,5]
Set 2: [2]
Set 3: [3,4]
Set 4: [4]
Set 5: [5]
Set 6: [6,7,8]
Set 7: [7,9]
Set 8: [8,9]
Set 9: [9]
Set 10: [10, 11]
Set 11: [11, 12]
Set 12: [12]

最佳答案

试试这个:

// Outside your method, in main scope
bool contains(std::vector<int> vec, int val) {
for(int i = 0; i < vec.size(); i++) if(vec[i] == val) return true;
return false;
}
// Inside your method
std::vector<int> glued;
for(int i = 0; i < vector1.size(); i++) { if(!contains(glued, vector1[i])) glued.push_back(vector1[i]); }
// Repeat for all vectors

这种方法效率不高,但我不知道有什么更好的。

关于c++如果它们共享一个数字,则组合 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33850569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com