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

C ++ STLのマルチセットbegin()およびend()関数


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

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

マルチセットは、セットコンテナに似たコンテナです。つまり、セットと同じキーの形式で、特定の順序で値を格納します。

マルチセットでは、値はセットと同じキーとして識別されます。マルチセットとセットの主な違いは、セットには別個のキーがあることです。つまり、2つのキーが同じではなく、マルチセットでは同じキー値が存在する可能性があります。

マルチセットキーは、二分探索木を実装するために使用されます。

multiset ::begin()とは何ですか?

multiset ::begin()関数は、C ++ STLに組み込まれている関数であり、ヘッダーファイルで定義されています。

この関数は、マルチセットコンテナの最初の要素を指しているイテレータを返します。

マルチセットコンテナは値を昇順で格納するため、begin()は、並べ替え基準に従ってコンテナの最初の要素である要素を指します。

構文

ms_name.begin();

パラメータ

この関数はパラメータを受け入れません。

戻り値

この関数は、それに関連付けられたマルチセットコンテナの最初の要素を指すイテレータを返します。

Input: std::multiset<int> mymultiset = {1, 2, 2, 3, 4};
   mymultiset.begin();
Output: 1

#include <bits/stdc++.h>
using namespace std;
int main() {
   int arr[] = {2, 4, 1, 3, 8, 5, 6};
   multiset<int> check(arr, arr + 7);
   cout<<"List is : ";
   for (auto i = check.begin(); i != check.end(); i++)
      cout << *i << " ";
   cout<<"\nStarting Element is : "<<*(check.begin());
   return 0;
}

出力

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

List is : 1 2 3 4 5 6 8
Starting Element is : 1

multiset ::end()とは

multiset ::end()関数は、C ++ STLに組み込まれている関数であり、ヘッダーファイルで定義されています。

この関数は、multisetcontainerの過去から終了までの位置を指しているイテレータを返します。

過去から最後までの要素は、マルチセットコンテナの最後の要素に続く要素です。つまり、マルチセットコンテナの特定の要素を指しているわけではありません。この関数は通常、begin()とともに使用され、マルチセットコンテナの範囲を指定します。

構文

ms_name.end();

パラメータ

この関数はパラメータを受け入れません。

戻り値

この関数は、関連付けられたマルチセットコンテナの終了要素を過ぎたところを指すイテレータを返します。

Input: std::multiset<int> mymultiset = {1, 2, 2, 3, 4};
   for( std::multiset<int>::iterator it=mymultiset.begin(); it!=mymultiset.end(); ++it )
Output: 1 2 2 3 4

#include <bits/stdc++.h>
using namespace std;
int main() {
   int arr[] = {2, 4, 1, 3, 8, 5, 6};
   multiset<int> check(arr, arr + 7);
   cout<<"List is : ";
   for (auto i = check.begin(); i != check.end(); i++)
      cout << *i << " ";
   return 0;
}

出力

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

List is : 1 2 3 4 5 6 8

  1. C++STLのset::begin()およびset ::end()

    Set ::begin()関数は、セットコンテナの最初の要素を指すイテレータを返すために使用される双方向イテレータです。 Set ::end()関数は、セットコンテナの最後の要素を指すイテレータを返すために使用される双方向イテレータです。 サンプルコード #include<iostream> #include <bits/stdc++.h> using namespace std; int main() {    set<int> s;    set<int>::iterator it;   &

  2. C ++ STLのマルチセットinsert()関数

    C ++ STLのマルチセットinsert()関数は、マルチセットコンテナ内の要素を、あるマルチセットから別のマルチセットのある位置から別の位置に挿入します。 使用されている関数のリスト: ms.size()=マルチセットのサイズを返します。 ms.insert()=マルチセットに要素を挿入するために使用されます。 サンプルコード #include <iostream> #include <set> #include <string> #include <cstdlib> using namespace std; int main()