3

std::list2 つのリストの差分を取得する準備ができている関数はありますか?

たとえば、私はlist1: obj1, obj2, obj3, obj4とを持っていlist2: obj2, obj3, obj4, obj5ます。

関数の結果は、、、となるはずlist1_unique: obj1です。list1_and_list2: obj2, obj3, obj4list2_unique: obj5

(私自身の実装を書くのは難しくありませんが、標準関数を好むでしょう)

4

1 に答える 1

8

あなたのリストがソートされている場合(あなたの例のように)、std::set_differencegetlist1_uniquelist2_unique、およびstd::set_intersectionget list1_and_list2. まだソートされていない場合は、 でソートできますstd::list::sort()

于 2012-06-05T14:07:14.990 に答える