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

C++STLのqueue::front()およびqueue ::back()


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

C ++ STLのキューとは何ですか?

キューは、C ++ STLで定義された単純なシーケンスまたはデータ構造であり、FIFO(先入れ先出し)方式でデータの挿入と削除を行います。キュー内のデータは継続的に保存されます。要素は最後に挿入され、キューの先頭から削除されます。 C ++ STLには、キューの定義済みテンプレートがすでに存在します。これは、キューと同様の方法でデータを挿入および削除します。

queue ::front()とは何ですか?

queue ::front()は、ヘッダーファイルで宣言されているC++STLの組み込み関数です。 queue ::front()は、それに関連付けられたキューコンテナに挿入された最初の要素への参照を返します。また、言い換えると、front()はキューコンテナ内で最も古い要素を直接参照していると言えます。

上の図のように、ヘッド、つまり1はキューに入力された最初の要素であり、テール、つまり-4はキューに入力された最後または最新の要素です

構文

myqueue.front();

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

戻り値

この関数は、キューコンテナに最初に挿入された要素への参照を返します。

Input: queue<int> myqueue = {10, 20, 30, 40};
      myqueue.front();
Output:
      Front element of the queue = 10

#include <iostream>
#include <queue>
using namespace std;
int main(){
   queue<int> Queue;
   Queue.push(10);
   Queue.push(20);
   Queue.push(30);
   Queue.push(40);
   Queue.push(40);
      cout<<"Element in front of a queue is: "<<Queue.front();
   return 0;
}

出力

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

キューの前の要素は次のとおりです:10

queue ::back()とは何ですか?

queue ::back()は、ヘッダーファイルで宣言されているC++STLの組み込み関数です。 queue ::back()は、関連付けられたキューコンテナに挿入された最後の要素への参照を返します。また、言い換えると、back()はキューコンテナ内で最も新しい要素を直接参照していると言えます。

構文

myqueue.back();

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

戻り値

この関数は、キューコンテナに最後に挿入された要素への参照を返します。

Input: queue<int> myqueue = {10, 20 30, 40};
      myqueue.back();
Output:
      Back element of the queue = 40

#include <iostream>
#include <queue>
using namespace std;
int main(){
   queue<int> Queue;
   Queue.push(10);
   Queue.push(20);
   Queue.push(30);
   Queue.push(40);
   Queue.push(50);
      cout<<"Elements at the back of the queue is: "<<Queue.back();
   return 0;
}

出力

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

Elements at the back of the queue is: 50

  1. 2の累乗であり、C++で合計Nを持つk個の数値を見つけます

    NとKの2つの数値があるとします。タスクは、2の累乗で合計がNであるKの数値を出力することです。それが不可能な場合は、-1を返します。 。 N=9およびK=4とすると、出力は4 2 2 1になり、その合計は9で、要素の数は4であり、それぞれが2の累乗です。 この問題を解決するには、次の手順に従う必要があります- kがNのセットビット数よりも小さいか、Nよりも大きい場合は、-1を返します。 設定されたビットで2の累乗を優先キューに追加します K個の要素を取得するまで優先キューを開始してから、その要素を優先キューから削除します 削除した要素/2を優先キューに再度2回挿入し

  2. C ++とC#のどちらが速いですか?

    C++は中級レベルの言語です。 1979年にBjarneStroustrupによって開発されました。これは、C言語とオブジェクト指向言語の単なる拡張です。 C#は、AndersHejlsbergによって開発された最新のオブジェクト指向言語です。これは.NETFrameworkの一部です。共通言語インフラストラクチャ(CLI)用に設計されています。また、人気のある言語です。 C ++とC#の違い どちらの言語もオブジェクト指向言語です。 C ++の抽象化レベルは低く、C#の抽象化レベルは高くなっています。 C ++では、プログラムは任意のプラットフォーム用にコーディングでき