|
@@ -664,6 +664,16 @@ namespace vstd
|
|
dest.insert(dest.end(), src.begin(), src.end());
|
|
dest.insert(dest.end(), src.begin(), src.end());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ template <typename T>
|
|
|
|
+ std::vector<T> intersection(std::vector<T> &v1, std::vector<T> &v2)
|
|
|
|
+ {
|
|
|
|
+ std::vector<T> v3;
|
|
|
|
+ std::sort(v1.begin(), v1.end());
|
|
|
|
+ std::sort(v2.begin(), v2.end());
|
|
|
|
+ std::set_intersection(v1.begin(), v1.end(), v2.begin(), v2.end(), back_inserter(v3));
|
|
|
|
+ return v3;
|
|
|
|
+ }
|
|
|
|
+
|
|
using boost::math::round;
|
|
using boost::math::round;
|
|
}
|
|
}
|
|
using vstd::operator-=;
|
|
using vstd::operator-=;
|