建立队列12345,利用栈完成队列的逆置java
时间: 2024-09-12 16:13:10 浏览: 46
在Java中,我们可以使用两个栈来实现队列的逆置操作,因为栈的特点是后进先出(LIFO),而队列则是先进先出(FIFO)。以下是简单的步骤:
1. 创建两个Stack对象,分别称为`inputStack`和`outputStack`。
2. 遍历队列,将每个元素依次压入`inputStack`。
3. 当遍历完队列后,开始从`inputStack`中弹出元素,并压入到`outputStack`中,这就是逆序的过程。
4. 最后,`outputStack`中的元素就是逆置后的队列元素。
下面是一个示例代码:
```java
import java.util.Stack;
public class Main {
public static void main(String[] args) {
// 创建一个模拟的队列
String[] queue = {"1", "2", "3", "4", "5"};
// 使用两个栈
Stack<String> inputStack = new Stack<>();
Stack<String> outputStack = new Stack<>();
// 将队列元素压入输入栈
for (String item : queue) {
inputStack.push(item);
}
// 逆序操作,从输入栈转到输出栈
while (!inputStack.isEmpty()) {
outputStack.push(inputStack.pop());
}
// 输出逆置后的队列
System.out.println("逆置后的队列:");
while (!outputStack.isEmpty()) {
System.out.print(outputStack.pop() + " ");
}
}
}
```
当你运行这个程序,它会打印出逆置后的队列:`5 4 3 2 1`.
阅读全文