比较向量和添加缺失的元素
Compare vectors and add missing elements
我需要一个这样的函数:
vector a;matrix A(a.size(),vector(9));
vector b;matrix B(b.size(),vector(9));
....
vector n;matrix N(n.size(),vector(9));
for(all vectors and matrices given){
if(vector[i] not in other vector){
put missing element to vector at position i
put zero vector to B at position i
}
}
我想给你一个例子,让它更清楚一点:
a=[name,place]; A=[vector[names],vector[place]]
b=[name,religion]; B=[vector[names], vector[religion]]
c=[place,religion]; C=[vector[place],vector[religion]]
现在的目标是最终得到a=b=c=[name,place,religion]
和A~B~C=[vector[names],vector[place],vector[religion]]
其中A,B和C中的向量仍然保存原始数据,并且在属性最初不存在的情况下为零向量。
在每个向量中,所有元素彼此不同(因此没有vec=[1,1,2]
或类似)
很抱歉我的描述太抽象了。我希望有人能得到我需要的,否则就问吧:-)
谢谢你的帮助!
至少对于向量,您可以创建一个set
,将所有向量中的所有项插入到集合中,然后从集合中复制到所有向量中。然后你应该有来自所有向量的所有数据,没有重复。
相关文章:
- 使用std::transform将一个范围的元素添加到另一个范围中
- 如何将元素添加到数组的线程安全函数?
- 如何将元素添加到向量的字符串位置
- 将数组的元素添加到链表中
- 如何在C++中将元素添加到非固定大小的数组中?
- 如何使用模板根据类型将元素添加到各种容器中
- 将在堆栈上声明的元素添加到静态数组
- 有什么方法可以将元素添加到列表中,如图所示?
- 继承层次结构并将元素添加到向量
- gStreamer 将元素添加到通过 gst_parse_launch 创建的管道中
- 将新元素添加到列表中,并返回对该元素的引用?
- 将元素添加到 std::list 在多线程中,无需 C++ 互斥锁
- C++如何通过超出大小将元素添加到指针数组中
- 将集合的随机元素添加到列表中,然后将其从原始集合中移除
- 将字符串集合中的元素添加到字符串集合的向量中
- 为什么 memcpy() 是一种将元素添加到 'std::map' 的方法?
- 如何有条件地将元素添加到 std::array - C++11
- 如何在 c++ 中将元素添加到数组的最后一个
- 如何使用<<运算符将元素添加到向量?
- 将元素添加到结构向量的全球向量中