使用堆栈反转字符串的 Java 程序

javacampus interviewserver side programmingprogramming

在本文中,我们将了解如何使用堆栈反转字符串。字符串是一种包含一个或多个字符并用双引号("“ ”" 括起来的数据类型。堆栈是一种线性数据结构,用于存储对象集合。它基于后进先出 (LIFO)。

下面是相同的演示 −

假设我们的输入是

输入字符串:Java Program

期望输出将是

反转字符串:margorP avaJ

算法

步骤 1 - 开始
步骤 2 - 声明两个字符串值,即 input_string 和 result,一个堆栈值,即 stack,以及一个 char 值,即 reverse。
步骤 3 - 定义值。
步骤 4 - 使用 for 循环遍历字符串的每个字符,并使用 ‘push’ 关键字将每个字符推送到堆栈。
步骤 5 - 现在,使用 ‘pop’ 关键字弹出堆栈中的每个元素,并将其分配给结果字符串。
步骤 6 - 显示结果
步骤 7 - 停止

示例 1

在这里,我们将所有操作都绑定在‘main’函数下。

import java.util.*;
public class ReverseString {
   public static void main(String[] args) {
      System.out.println("Required packages have been imported");
      String input_string = "Java Program";
      System.out.println("The string is defined as " +input_string);
      char[] reverse = new char[input_string.length()];
      Stack<Character> stack = new Stack<Character>();
      for (int i = 0; i < input_string.length(); i++) {
         stack.push(input_string.charAt(i));
      }
      int i = 0;
      while (!stack.isEmpty()) {
         reverse[i++] = stack.pop();
      }
      String result = new String(reverse);
      System.out.println("\nThe reversed string is: " + result);
   }
}

输出

Required packages have been imported
The string is defined as Java Program

The reversed string is: margorP avaJ

示例 2

在这里,我们将操作封装成展现面向对象编程的函数。

import java.util.*;
public class ReverseString {
   public static String reverse_string(String input_string) {
      char[] reverse = new char[input_string.length()];
      Stack<Character> stack = new Stack<Character>();
      for (int i = 0; i < input_string.length(); i++) {
         stack.push(input_string.charAt(i));
      }
      int i = 0;
      while (!stack.isEmpty()) {
         reverse[i++] = stack.pop();
      }
      return new String(reverse);
   }
   public static void main(String[] args) {
      System.out.println("Required packages have been imported");
      String input_string = "Java Program";
      System.out.println("The string is defined as " +input_string);
      System.out.println("\nThe reversed string is: " + reverse_string(input_string));
   }
}

输出

Required packages have been imported
The string is defined as Java Program

The reversed string is: margorP avaJ

相关文章