一个栈中元素的类型为整型,现在想将该栈从顶到底按从大到小的顺序排序,只许申请一个栈。除此之外,可以申请新的变量,但不能申请额外的数据结构。如何完成排序? import java.util.*; public class Main { public static void main(String[] args){ Scanner in=new Scanner(System.in); int n=in.nextInt(); Stack<Integer>stack=new Stack<>(); for(int i=0;i<n;i++){ int num=in.nextInt(); stack.add(num); } stackSort(stack); } public static void stackSort(Stack<Integer>stack){ Stack<Integer>help=new Stack<>(); while(!stack.empty()){ int top=stack.pop(); if(help.empty()){ help.add(top); } else{ int helpTop=help.peek(); if(helpTop<top){ help.add(top); } else{ while(!help.empty()&&helpTop>top){ stack.add(help.pop()); if(!help.empty()) helpTop=help.peek(); } help.add(top); } } } while(!help.empty()){ System.out.print(help.pop()+" "); } } }