向量析取
Vectors disjunction
在 c++ 中实现两个 std::vectors 之间的逻辑析取的最优雅的方法是什么?
例如:
vector a = {0,1,2,3,4,5,6,7,8,9};
vector b = {0,1,2,3,4};
vector c = a-b;
print c = {5,6,7,8,9}
std::set_difference,序列应该排序。
示例:
std::vector<int> c;
std::set_difference
(
a.begin(), a.end(), b.begin(), b.end(), std::back_inserter(c)
);
在 c++ 中实现两个 std::vectors 之间的逻辑析取的最优雅的方法是什么?
例如:
vector a = {0,1,2,3,4,5,6,7,8,9};
vector b = {0,1,2,3,4};
vector c = a-b;
print c = {5,6,7,8,9}
std::set_difference,序列应该排序。
示例:
std::vector<int> c;
std::set_difference
(
a.begin(), a.end(), b.begin(), b.end(), std::back_inserter(c)
);