/**
* 用递归逆序一个栈
*/
//返回栈底元素,并且重新压入剩余元素
public 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 void reverse(Stack<Integer> stack){
if(stack.isEmpty()){
return;
}
int i = getAndRemoveLastElement(stack);
reverse(stack);
stack.push(i);
}
用递归实现栈的逆序
最新推荐文章于 2024-07-10 16:08:48 发布