もっと詳しく
キューは、非ジェネリックであり、システムコレクションヘッダーファイルに存在するコレクションのタイプです。 このライブラリは、すべてのキュー関連コードに含まれている必要があります。 キューは動的に作成されるデータ構造であり、必要に応じてサイズを大きくすることができます。 キューは、後入れ先出しアプローチに従うことによって実装されます。 キューには、同じデータ型と異なるデータ型のアイテムを格納できます。 キューのデータ構造は、データを保存するのと同じ方法でデータを取得する必要がある場合に役立ちます。 この記事には、キューに関して考えられるすべての機能が含まれます。

キューの実装

例1

Cシャープでキューを作成するには、「new」演算子を使用して動的メモリを宣言する簡単な方法を使用します。 同様に、キューはそのように宣言されます。 まず、Cシャープキュープログラムの実行に役立つライブラリについて説明する必要があります。 ここでは、コレクションとシステムの2つの主要なヘッダーファイルについて説明します。

新しいオブジェクトは、キューを作成するために使用されます。 次に、このオブジェクトはqt変数に割り当てられます。 後で、キューのすべての操作はこの演算子を使用して実行されます。

キューの作成後、キューにアイテムを追加できるようになりました。 アイテムは、変数を介して開始されるキューの組み込み関数を介して追加されます。この関数には、キューの宣言時にキューのすべての機能を実行するすべての権限が割り当てられています。 エンキュー機能は、キューにアイテムを追加するために使用されます。

入力したい項目は、エンキュー機能のパラメータに書き込まれます。 このようにして、キューに値を追加できます。 この要素の追加は手動です。 この目的でループを使用して、時間計算量の少ない複数のアイテムを追加することもできます。

すべてのアイテムを表示するために、for eachループを使用します。これにより、オブジェクトがキューを反復処理します。 追加されたアイテムの総数を表示するために使用されるキューのもう1つの機能は、オブジェクトを介してカウント機能を使用することです。

MCSは、UbuntuでCシャープ言語のコードをコンパイルして実行するために使用されるコンパイラです。 ソースコードのコンパイル後、Monoは.exe拡張子を使用してcsファイルを実行する役割を果たします。

$ MCS file.cs
$モノファイル.exe

結果の値には、キューに存在するすべてのアイテムと、count()を介して取得されたアイテムの総数が含まれていることがわかります。

例2

キューの追加や削除と同様に、キューの機能を使用して、キューに存在するアイテムを削除します。 以下の例では、削除機能を使用する必要があります。

まず、宣言後にエンキュー機能を使用してアイテムを追加します。 エンキュー機能で3項目入力しました。 ここで、1つのアイテムを削除します。 キューの一番上にある最初のアイテムが最初に削除されます。 たとえば、16が最初に追加されるため、最初に削除されます。

この組み込み機能では最初の項目が自動的に削除されることが明らかであるため、デキュー関数のパラメーターに番号や項目を記載する必要はありません。 最初のアイテムを削除すると、最初のアイテムの代わりに2番目のアイテムが表示されます。 したがって、デキュー機能を再度使用すると、2番目の項目(新しいものが最初)が削除されます。

for eachループは、削除後に残っているすべてのアイテムを表示します。 ここでコードを実行すると、2番目と3番目のアイテムが表示されている間に最初のアイテムが削除されたという結果が表示されます。

例3

最上位にあるキューの値を削除または取得する場合は、キューの2つの簡単な機能を使用してこれを実現できます。 1つはPeek()関数で、もう1つはDequeue()関数です。

  • Peek():これは、アイテムを削除せずにキューの開始時にオブジェクトを返すために使用されるメソッドです。
  • Dequeue():この関数は、いくつかの変更を加えて、最初にオブジェクトを返します。 これは、キューから最上位のアイテムを削除することを意味します。

次に、例でこれらの機能を使用して、それらの機能について詳しく説明します。 まず、キューを作成してアイテムを追加します。 count()関数を使用して、キューに追加されたすべてのアイテムを表示します。 My_queue()は、次に示すように、新しく宣言されたキューのオブジェクトです。

前に説明したように、dequeueメソッドは、キューの先頭にあるアイテムを削除します。 したがって、最上位の項目はdequeue()関数によって取得されます。

削除後、カウント機能を使用して、残っているアイテムの数を表示します。 アイテムを削除せずに、この時点でどの要素が一番上の位置にあるかを知りたいと思います。 最初のアイテムが削除されると、2番目のアイテムが自動的に最初になります。 したがって、ピーク関数を使用すると、FIFOアプローチの後に現在最初に新しい2番目のアイテムが取得されます。

繰り返しになりますが、アイテムの数を数えて、ピーク機能によってアイテムが削除されないようにします。

実行すると、アイテムの総数が5であることがわかります。 最上位の要素が表示され、キューから削除されます。 その後、カウント機能が再びアイテムを表示します。 現在の最上位のアイテムが取得され、カウント関数は何も削除されていないことを示します。

例4

組み込みの機能で確認してください。 C ++、C、またはその他のプログラミング言語とは異なり、アイテムの検索は難しいため、ループなどのさまざまな方法を使用して、関連するアイテムのアイテム検索を繰り返します。 Cシャープは、パラメーターにアイテムを含めることでアイテムの可用性をチェックする単純なcontain()関数を使用することで、より簡単になりました。

アイテムを作成してキューに入力しましょう。 「ifステートメント」は、条件を使用して、関数contains()を介してアイテムをチェックします。

My.queue.Contains((“オレンジ”)。;

アイテムが存在する場合は、在庫状況のメッセージが表示されます。

実行時に、アイテムがキューに存在することがわかります。

結論

Cシャープキューは、new演算子のオブジェクトを介して宣言されます。 Cシャーププログラミング言語では、キューには、キューに適用されるほぼすべての操作の組み込み関数が含まれています。 たとえば、アイテムを追加、削除、キューで検索したり、現在キューにある最上位のアイテムを取得したりできます。 たとえば、スイッチやルーターなどでキューが使用されるアプリケーションはいくつかあります。 日常生活のほかに、スイッチはセマフォ、CPU、およびディスクのスケジューリングで使用されます。 キューのすべての機能は、Linuxオペレーティングシステムに実装されている例で使用されています。

The post C#キュー appeared first on Gamingsym Japan.