gpt4 book ai didi

java - 如何使用另一个堆栈反转java中的堆栈?

转载 作者:太空宇宙 更新时间:2023-11-04 10:21:12 25 4
gpt4 key购买 nike

我想反转java中java.util.Stack形式的堆栈通过使用另一个堆栈。我知道我可以推送 stack 1 的最上面的元素至stack 2stack 2将具有 stack 1 的反转元素。但这个问题要求我在 stack 1 中反射(reflect)答案本身而不是stack 2 。我也不能使用更多的堆栈。如何反转并反射(reflect)stack 1中反转的答案本身?

最佳答案

Stack s1 = new Stack();
Stack s2 = new Stack();

s1.add(1);
s1.add(2);
s1.add(3);
s1.add(4);

s2.add(s1.pop());
s2.add(s1.pop());
s2.add(s1.pop());
s2.add(s1.pop());

s1 = s2;

System.out.println(s1);

你没有说不允许你重新分配堆栈变量。这样您就可以在 s1 上获得相反的顺序。

另一种方法是使用 Collections.reverse(s1); 其效果基本相同

关于java - 如何使用另一个堆栈反转java中的堆栈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51154449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com