C++ でのセット
セット (設定) —追加された要素を自動的に昇順に並べ替えるコンテナです。ただし、同じ値を追加する場合、set はそのインスタンスを 1 つだけ保存します (multiset - multiset- には重複が含まれる場合があります)。新しい要素がセットに追加されると、並べ替え順序に違反しないように、要素はすぐに所定の位置に配置されます。
C++ のセットは、クラス set (multiset) を通じて STL 標準テンプレート ライブラリで定義されます。
セットは赤と黒のバイナリ ツリーです。検索、削除、挿入の操作は対数的な複雑さになります。
セットを使用するには、“
set” ライブラリを含める必要があります。
#include <セット>
プレ>
セット宣言:
set<int> mySet; // 空のセットを宣言します。
マルチセット mySet; // 空のマルチセットを宣言します。
セット (セット) を操作するための関数
empty() - コンテナ内に要素が存在しないことをチェックします
size() - コンテナ内の要素の数を返します
clear() - コンテナをクリアします
insert() - 要素を挿入します
erase() - 要素を削除します
count() - 指定されたキーに一致する要素の数を返します
find() - 特定のキーを持つ要素を検索します
lower_bound() - 指定された値以上の最初の要素へのイテレータを返します
upper_bound() - 指定された値より大きい最初の要素への反復子を返します
セットとマルチセットの例
#include <iostream>
#include <セット>
名前空間 std を使用します。
int main()
{
set<int> mySet1; // 空のセットを宣言します
マルチセット mySet2; // 空のマルチセットを宣言します
// セットに要素を追加します
mySet1.insert(1);
mySet1.insert(2);
mySet1.insert(3);
mySet1.insert(1);
// マルチセットに要素を追加します
mySet2.insert(1);
mySet2.insert(2);
mySet2.insert(3);
mySet2.insert(1);
set<int>::イテレータ it; //イテレータを作成する
for(it = mySet1.begin(); it != mySet1.end(); it++) { // すべての要素を表示
cout << (*それ) << " "; // セット
}
cout <<エンドル;
for(it = mySet2.begin(); it != mySet2.end(); it++) { // すべての要素を出力します
cout << (*それ) << " "; // マルチセット
}
0 を返します。
}
プレ>