工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

プッシュとポップの例を含む C# スタック

C# のスタックとは?

スタックは、後入れ先出し (LIFO) の概念を表す特別なケースのコレクションです。まずLIFOを理解するために、例を挙げてみましょう。それぞれの本が互いに積み重なっている本を想像してみてください。

本の場合の後入れ先出しの概念は、本のスタックから一番上の本だけを取り除くことができることを意味します。スタックの設定が乱れるため、その間から本を取り除くことはできません。

したがって、C# では、スタックも同じように機能します。要素はスタックに追加され、1 つずつ積み重ねられます。要素をスタックに追加するプロセスは、プッシュ操作と呼ばれます。スタックから要素を削除するには、スタックの一番上の要素を削除することもできます。この操作は pop として知られています。

Stack コレクションで使用できる操作を詳しく見てみましょう。

スタックの宣言

スタックは、Stack Data タイプを使用して作成されます。キーワード「new」は、スタックのオブジェクトを作成するために使用されます。その後、オブジェクトは変数 st に割り当てられます。

Stack st = new Stack()

要素をスタックに追加する

push メソッドは、要素をスタックに追加するために使用されます。ステートメントの一般的な構文を以下に示します。

Stack.push(element)

スタックからの要素の削除

pop メソッドは、スタックから要素を削除するために使用されます。 pop 操作は、スタックの最上位の要素を返します。ステートメントの一般的な構文を以下に示します

 Stack.pop()

カウント

このプロパティは、スタック内のアイテムの数を取得するために使用されます。以下は、このステートメントの一般的な構文です。

Stack.Count

含む

このメソッドは、スタックに要素が存在するかどうかを確認するために使用されます。以下は、このステートメントの一般的な構文です。このステートメントは、要素が存在する場合は true を返し、存在しない場合は値 false を返します。

Stack.Contains(element)

これがコードレベルで機能することを見てみましょう。以下のコードはすべて、コンソール アプリケーションに書き込まれます。コードは Program.cs ファイルに書き込まれます。

以下のプログラムでは、上記のメソッドをどのように使用できるかを確認するためのコードを記述します。

例 1:Stack.Push() メソッド

この例では、

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args)
  {
   Stack st = new Stack();
   st.Push(1);
   st.Push(2);
   st.Push(3);

   foreach (Object obj in st)
   {
    Console.WriteLine(obj);
   }
    Console.WriteLine(); Console.WriteLine();
    Console.WriteLine("The number of elements in the stack " +st.Count);
    Console.WriteLine("Does the stack contain the elements 3 "+st.Contains(3));
    Console.ReadKey();
  }
 }
}

コードの説明:-

<オール>
  • 最初のステップは、スタックを宣言するために使用されます。ここでは、スタックの要素を保持する変数として「st」を宣言しています。
  • 次に、3 つの要素をスタックに追加します。各要素は Push メソッドを介して追加されます。
  • 配列リストのようにインデックス位置を介してスタック要素にアクセスできないため、スタックの要素を表示するには別の方法を使用する必要があります。オブジェクト (obj) は、スタックの各要素を保持するために宣言される一時変数です。次に foreach ステートメントを使用して、スタックの各要素を調べます。スタック要素ごとに、値が obj 変数に割り当てられます。次に、Console.Writeline コマンドを使用して値をコンソールに表示します。
  • Count プロパティを使用しています (st.count ) スタック内のアイテムの数を取得します。このプロパティは数値を返します。次に、この値をコンソールに表示します。
  • 次に、Contains メソッドを使用して、値 3 がスタックに存在するかどうかを確認します。これは、true または false の値を返します。次に、この戻り値をコンソールに表示します。
  • 上記のコードが正しく入力され、プログラムが実行されると、次の出力が表示されます。

    出力:

    出力から、スタックの要素が表示されていることがわかります。また、値 3 がスタックに定義されていることを示すために、True の値が表示されます。

    注意 :スタックに最後にプッシュされた要素が最初に表示されることに気付きました。これは、スタックの最上位の要素です。スタック要素の数も出力に表示されます。

    例 2:Stack.Pop() メソッド

    次に、「削除」機能を見てみましょう。スタックから最上位の要素を削除するために必要なコードが表示されます。

    using System;
    using System.Collections;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace DemoApplication
    {
     class Program
     {
      static void Main(string[] args)
      {
       Stack st = new Stack();
       st.Push(1);
       st.Push(2);
       st.Push(3);
       
       st.Pop();
    
       foreach (Object obj in st)
       {
        Console.WriteLine(obj);
       }
        Console.ReadKey();
      }
     }
    }

    コードの説明:-

    <オール>
  • ここでは、スタックから要素を削除するために使用される pop メソッドを発行しています。
  • 上記のコードを正しく入力してプログラムを実行すると、次の出力が表示されます。

    出力:

    要素 3 がスタックから削除されたことがわかります。

    まとめ


    C言語

    1. C# 式、ステートメント、およびブロック (例付き)
    2. C++ do…while ループと例
    3. C++ ポインタと例
    4. C++ Char データ型と例
    5. C++ 演算子のオーバーロードと例
    6. C++ 関数とプログラム例
    7. 例を含む C# コレクションのチュートリアル
    8. 例を使用した Python 文字列 count()
    9. 例を使用した Python round() 関数
    10. 例を使用した Python map() 関数
    11. Python Timeit() と例