C ++ STLでequal_range()をマップします
このチュートリアルでは、C++STLのマップequal_rangeを理解するためのプログラムについて説明します。
この関数は、指定されたパラメーターに相当するキーが存在するコンテナーの範囲を制限するイテレーターのペアを返します。
例
#include <bits/stdc++.h>
using namespace std;
int main() {
//initializing container
map<int, int> mp;
mp.insert({ 4, 30 });
mp.insert({ 1, 40 });
mp.insert({ 6, 60 });
pair<map<int, int>::iterator,
map<int, int>::iterator>
it;
it = mp.equal_range(1);
cout << "The lower bound is " << it.first->first<< ":" << it.first->second;
cout << "\nThe upper bound is "<< it.second->first<< ":" << it.second->second;
return 0;
} 出力
The lower bound is 1:40 The upper bound is 4:30
-
C++STLでのセットとマップ
Setは抽象データ型であり、要素の値によって要素が識別されるため、各要素は一意である必要があります。要素の値は、セットに追加されると変更できませんが、その要素の変更された値を削除して追加することはできます。 マップは、マップされた方法で要素を格納する連想コンテナです。各要素には、キー値とマップされた値があります。 2つのマップされた値が同じキー値を持つことはできません。 したがって、上記から明らかなように、setには唯一のキーが含まれ、mapにはキーを持つ値が含まれ、どちらも一意でソートされた値を持つ必要があります。 順序付けされていない要素と並べ替えられていない要素には、unorder
-
STLにマップを実装するC++プログラム
マップは、マップされた方法で要素を格納する連想コンテナです。各要素には、キー値とマップされた値があります。 2つのマップされた値が同じキー値を持つことはできません。 ここで使用される関数: m ::find()–見つかった場合は、マップ内のキー値「b」を持つ要素にイテレータを返します。それ以外の場合は、終了するイテレータを返します。 m ::Erase()–マップからキー値を削除します。 m ::equal_range()–ペアのイテレータを返します。ペアは、キーと同等のキーを持つコンテナ内のすべての要素を含む範囲の境界を指します。 m insert()–マップコンテ