我需要在C++中使用遞歸來反轉堆棧。我只能使用pop
,push
和reverseStack
,沒有額外的功能,例如insertAtBottom,這是我在搜索stackoverflow和web時發現的。遞歸反轉堆棧
我已經試過:
void Stack::reverseStack(){
if (isEmpty())
return;
else{
int x;
pop(x);
reverseStack();
push(x);
}
}
,但是這將創建一個堆完全一樣原始。
您是否允許將物品推入第二個堆棧,然後在最後交換堆棧? – Wyzard 2015-04-02 02:47:35