栈的逆序

要求:只是用递归实现栈的逆序

 实现两个函数:

1.getAndRemoveLastElement(), 该函数用于返回栈底元素,并将其他元素按原来顺序重新压入

2.reverse(),该函数用于逆序栈。

具体代码如下:

import java.util.Stack;

public class pro3_reverseStack {
    public static int getAndRemovelastElement(Stack<Integer> stack) {
        int result = stack.pop();
        if(stack.isEmpty()) {
            return result ;
        }
        else {
            int last = getAndRemovelastElement(stack) ;
            stack.push(result) ;
            return last ;
        }
    }
    
    public static void reverse(Stack<Integer> stack) {
        if(stack.isEmpty()) {
            return ;
        }
        
        int i = getAndRemovelastElement(stack) ;
        reverse(stack) ;
        stack.push(i) ;
    }
}
原文地址:https://www.cnblogs.com/chwy/p/5619825.html