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

C ++ STLのstackempty()とstacksize()


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

C ++ STLのスタックとは何ですか?

スタックは、データをLIFO(後入れ先出し)に格納するデータ構造であり、最後に挿入された要素の先頭から挿入と削除を行います。プレートのスタックのように、新しいプレートをスタックに押し込みたい場合は上部に挿入し、プレートをスタックから削除したい場合は上部からも削除します。

stack ::empty()とは何ですか?

stack ::empty()関数は、C ++ STLに組み込まれている関数であり、ヘッダーファイルで定義されています。 empty()は、関連付けられたコンテナが空かどうかを確認し、それに応じてtrueまたはfalseを返すために使用されます。

この関数は、コンテナが空であることを確認します。これは、コンテナのサイズが0であることを意味します。

構文

stack_name.empty();

パラメータ

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

戻り値

この関数は、コンテナが空の場合はtrueを返し、それ以外の場合はfalseを返します。

入力

std::stack<int> stack1;
stack1.emplace(1);
stack1.emplace(2);
stack1.emplace(3);
stack1.empty();

出力

false

入力

std::stack<int> stack2;
stack2.empty();

出力

true

#include <iostream>
#include <stack>
using namespace std;
int main(){
   stack<int> stck;
   int Product = 1;
   stck.push(1);
   stck.push(2);
   stck.push(3);
   stck.push(4);
   stck.push(5);
   stck.push(6);
   while (!stck.empty()){
      Product = Product * stck.top();
      stck.pop();
   }
   cout<<"\nProduct of elements in stack are: "<<Product;
   return 0;
}

出力

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

Product of elements in stack are: 720

stack ::size()とは何ですか?

stack ::size()関数は、C ++ STLに組み込まれている関数であり、ヘッダーファイルで定義されています。 size()は、関連付けられたコンテナのサイズを確認し、結果を整数値で返すために使用されます。整数値は、コンテナ内の要素の数です。

コンテナが空の場合、size()は0を返します

構文

stack_name.size();

パラメータ

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

戻り値

この関数はコンテナのサイズを返します

入力

std::stack<int> stack1;
stack1.emplace(1);
stack1.emplace(2);
stack1.emplace(3);
stack1.size();

出力

3

入力

std::stack<int> stack2;
stack2.size();

出力

0

#include <iostream>
#include <stack>
using namespace std;
int main(){
   stack<int> stck;
   int Product = 1;
   stck.push(1);
   stck.push(2);
   stck.push(3);
   stck.push(4);
   stck.push(5);
   stck.push(6);
   cout<<"size of stack is: "<<stck.size();
   while (stck.size()>0){
      Product = Product * stck.top();
      stck.pop();
   }
   cout<<"\nProduct of elements in stack are: "<<Product;
   return 0;
}

出力

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

size of stack is: 6
Product of elements in stack are: 720

  1. C ++ STL(3.5)でスタック

    C ++ STLでは、スタックはLIFO構造として実装されるコンテナーとして使用されます。 LIFOは後入れ先出しを意味します。 Stackは、本が上下に並べられた本の山と見なすことができ、最後に挿入された本が最初に削除されるため、LIFO構造と呼ばれます。 スタックに関連付けられている操作は- Top() -この関数は、スタックの最上位要素への参照を返します。 構文 --name_of_stack.top() パラメータ -パラメータなし 戻り値 -スタックコンテナの最上位要素への参照 Push() -この関数は、要素をスタックコンテナに挿入するために使用されま

  2. C ++ STLのempty()関数を一覧表示します

    この記事では、C++でのlist::empty()関数の動作、構文、および例について説明します。 STLのリストとは何ですか? リストは、任意の場所で一定時間の挿入と削除を順番に実行できるデータ構造です。リストは、二重にリンクされたリストとして実装されます。リストを使用すると、連続しないメモリ割り当てが可能になります。リストは、配列、ベクトル、および両端キューよりも、コンテナー内の任意の位置で要素の挿入抽出と移動を実行します。リストでは、要素への直接アクセスは遅く、リストはforward_listに似ていますが、フォワードリストオブジェクトは単一のリンクリストであり、フォワードでのみ繰り返