2 つの s の空の交差を確認するにはどうすればよいstd::set
ですか? を使用できますが、それは不必要に遅いため、回答set_intersection
するだけで済みます。bool
備考:std::set
順序集合を意味し、それらは同じ型などです。
自分でコーディングするだけで何か問題がありますか?
bool empty_intersection(const set<int>& x, const set<int>& y)
{
std<int>::const_iterator i = x.begin();
std<int>::const_iterator j = y.begin();
while (i != x.end() && j != y.end())
{
if (*i == *j)
return false;
else if (*i < *j)
++i;
else
++j;
}
return true;
}
とにかくそのような何か。完全にテストされていないコード。