題目
實現一個棧的逆序,但是隻能用遞歸函數和這個棧本身的操作來實現,而不能自己申請另外的數據結構
代碼
public class ReverseStack {
public int get(Stack<Integer> stack) {
int result = stack.pop();
if (stack.isEmpty()) {
return result;
}
int last = get(stack);
stack.push(result);
return last;
}
public void reverse(Stack<Integer> stack) {
if (stack.isEmpty()) {
return;
}
int i = get(stack);
reverse(stack);
stack.push(i);
}
}