C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++STLのmultimap::count()


この記事では、C++STLでのmultimap::count()関数の動作、構文、および例について説明します。

C ++ STLのマルチマップとは何ですか?

マルチマップは、マップコンテナに似た連想コンテナです。また、Key-Valueとマップされた値の組み合わせによって形成された要素を特定の順序で格納することも容易になります。マルチマップコンテナでは、同じキーに関連付けられた複数の要素が存在する可能性があります。データは、関連するキーを使用して内部的に常に並べ替えられます。

multimap ::count()とは何ですか?

Multimap ::count()関数は、C ++ STLに組み込まれている関数であり、 ヘッダーファイルで定義されています。 count()は、関数に関連付けられたマルチマップ内の特定のキーに存在する要素の数をカウントするために使用されます。

キーがマルチマップコンテナに存在しない場合、この関数はゼロを返します。

構文

multimap_name.count(key_type& key);

パラメータ

関数は次のパラメータを受け入れます-

  • キー −これは、キーに関連付けられている要素の数を検索してカウントするキーです。

戻り値

この関数は整数、つまり同じキーを持つ要素の数を返します。

入力

std::multimap<char, int> odd, eve;
odd.insert(make_pair(‘a’, 1));
odd.insert(make_pair(‘a, 3));
odd.insert(make_pair(‘c’, 5));
odd.count(‘a’);

出力

2

#include <bits/stdc++.h>
using namespace std;
int main(){
   //create the container
   multimap<int, int> mul;
   //insert using emplace
   mul.emplace_hint(mul.begin(), 1, 10);
   mul.emplace_hint(mul.begin(), 2, 20);
   mul.emplace_hint(mul.begin(), 2, 30);
   mul.emplace_hint(mul.begin(), 1, 40);
   mul.emplace_hint(mul.begin(), 1, 50);
   mul.emplace_hint(mul.begin(), 5, 60);
   cout << "\nElements in multimap is : \n";
   cout <<"KEY\tELEMENT\n";
   for (auto i = mul.begin(); i!= mul.end(); i++){
      cout << i->first << "\t" << i->second << endl;
   }
   cout<<"Key 1 appears " << mul.count(1) <<" times in the multimap\n";
   cout<<"Key 2 appears " << mul.count(2) <<" times in the multimap\n";
   return 0;
}
出力

上記のコードを実行すると、次の出力が生成されます-

Elements in multimap is :
KEY ELEMENT
1 50
1 40
1 10
2 30
2 20
5 60
Key 1 appears 3 times in the multimap
Key 2 appears 2 times in the multimap

  1. C ++ STLでcount()関数を設定する

    この記事では、C++STLのset::count、それらの構文、動作、およびそれらの戻り値について説明します。 C ++ STLの設定とは何ですか? C ++ STLのセットは、一般的な順序で一意の要素を持つ必要があるコンテナーです。要素の値は要素を識別するため、セットには一意の要素が必要です。セットコンテナに値を追加すると、後で変更することはできませんが、値を削除したり、セットに追加したりすることはできます。セットは二分探索木として使用されます。 set ::count()とは何ですか? count()関数は、ヘッダーファイルで定義されているC++STLの組み込み関数です。 coun

  2. STLでマルチマップを実装するC++プログラム

    マルチマップは、複数の要素が同じキーを持つことができることを除いて、マップに似ています。キー値とマップされた値のペアは、マルチマップで一意である必要があります。 関数はここで使用されます- mm ::find()–見つかった場合はマルチマップ内のキー値「b」の要素にイテレータを返します。それ以外の場合は終了するイテレータを返します。 mm ::Erase()–マルチマップからキー値を削除します。 mm ::equal_range()–ペアのイテレータを返します。ペアは、キーと同等のキーを持つコンテナ内のすべての要素を含む範囲の境界を指します。 mm insert()