ホームページ >Java >&#&チュートリアル >すべてのスタック要素をカウントするJavaプログラム

すべてのスタック要素をカウントするJavaプログラム

Patricia Arquette
Patricia Arquetteオリジナル
2025-02-07 11:35:10653ブラウズ

Java program to count all stack elements

このチュートリアルでは、Javaスタックの要素の数を計算するためのいくつかの方法を紹介します。 Javaでは、スタックはFirst Outの最後(LIFO)の原則に続く基本的なデータ構造です。つまり、最近スタックに追加された要素が最初にアクセスされます。

スタックの実用的なアプリケーションには、機能コール管理、式評価などが含まれます。これらのシナリオでは、スタック内の要素の数を計算する必要がある場合があります。たとえば、ファンクションコール管理にStackを使用する場合、評価のためにStackを使用する場合、実行する操作の総数を計算する必要があります。

スタック内の要素の数を計算する3つの方法を検討します:

    メソッド
  • を使用します Stack.size()
  • ループ(反復方法)
  • を使用します for再帰的な方法
  • を使用します
メソッド

を使用します Stack.size()スタック内の要素の数を計算する最初の方法は、

メソッドを使用することです。スタックのサイズを見つけるのに役立ちます。これは、スタック内の要素の総数に相当します。

Stack.size()文法

次の構文は、

メソッドを使用してJavaで使用できます。

上記の構文では、「S1」は、数字、文字列、ブール人などの要素を含むスタックデータ構造です。 Stack.size()

パラメーター
<code class="language-java">s1.size();</code>

メソッドは、パラメーターを受け入れません。

return値

Stack.size()

メソッドは、スタック内の要素の総数を返します。

Stack.size()次のコードでは、スタック「S1」を定義します。その後、3つの整数をスタックに挿入します。スタックを使用して

メソッドを使用すると、「3」を出力として返し、スタック内の要素の総数を示します。

outputsize()

<code class="language-java">import java.util.Stack;

public class StackExample {
    public static void main(String[] args) {
        Stack<integer> s1 = new Stack<>();

        // 将元素压入栈
        s1.push(1);
        s1.push(2);
        s1.push(3);

        // 使用size()方法获取元素数量
        int count = s1.size();

        // 打印元素数量
        System.out.println("栈中元素数量:" + count);
    }
}</integer></code>

ループ(反復方法)

を使用します
<code>栈中元素数量:3</code>
さて、スタック内の要素の数を計算する2番目の方法を見てみましょう。この方法では、

を使用してスタックの各要素をループし、スタック内の要素の総数を計算します。 for

文法

forスタック内の要素の総数は、次の構文を使用して

を使用して計算できます。

上記の構文では、「S1」はスタックであり、「S1」スタックの要素を反復しています。ループ本体では、「カウント」変数の値を1で増加させ、スタック内に要素の数を保存します。

for

次の例では、各反復で「カウント」変数の値を
<code class="language-java">for (Integer element : s1) {
     count++;
}</code>
を使用してスタックの各要素をループします。その後、スタック内の要素の数である「カウント」変数の値を印刷します。

output

for再帰的な方法

を使用します
<code class="language-java">import java.util.Stack;

public class StackCountIterative {
    public static void main(String[] args) {
        Stack<integer> s1 = new Stack<>();

        // 将元素压入栈
        s1.push(1);
        s1.push(2);
        s1.push(3);

        // 使用迭代计算元素数量
        int count = 0;
        for (Integer element : s1) {
            count++;
        }

        // 打印元素数量
        System.out.println("栈中元素数量:" + count);
    }
}</integer></code>
すべてのスタック要素を計算する3番目の方法は、再帰を使用することです。このアプローチでは、スタックの各要素を再帰的に横断し、スタック内の要素の総数を追跡します。

文法
<code>栈中元素数量:3</code>

すべてのスタック要素は、次の構文を使用して再帰的な方法を使用して計算できます。

上記の構文では、次の手順に従います。

  1. スタックが空の場合は、「0」を返し、スタックに要素がないことを示します。
  2. 次のステップで現在の要素の発生数を計算するため、
  3. スタック内の要素を削除します。
  4. 更新されたスタックに再帰的な呼び出しを行い、結果値を「1」に追加し、「count」変数に保存します。ここでは、以前に削除された要素に「1」を追加します。
  5. 次に、「要素」を再度スタックに押し込み、スタック状態を変更せずに保ちます。

この例では、再帰方法を使用して、スタック内の要素の数を計算します。

<code class="language-java">s1.size();</code>

output

<code class="language-java">import java.util.Stack;

public class StackExample {
    public static void main(String[] args) {
        Stack<integer> s1 = new Stack<>();

        // 将元素压入栈
        s1.push(1);
        s1.push(2);
        s1.push(3);

        // 使用size()方法获取元素数量
        int count = s1.size();

        // 打印元素数量
        System.out.println("栈中元素数量:" + count);
    }
}</integer></code>

結論

3つの方法を調査して、スタック内の要素の総数を計算します。最初の方法では、シンプルで直接的なStack.size()メソッドを使用します。 2番目の方法では、a forループを使用してスタック要素を計算します。これは、最初の方法よりもわずかに複雑です。 3番目の方法では、再帰を使用してスタック要素を計算します。これは、初心者にとってより複雑な場合があります。

スタック要素を計算しながらスタックの各要素で特定の操作を実行する必要がある場合は、2番目の方法を使用する必要があります。

以上がすべてのスタック要素をカウントするJavaプログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。