2016-09-03 55 views
0

我想在C++中創建一個遞歸函數,它將整數作爲參數傳入,逐個遍歷每個元素,並返回該deque。我在StackOverflow上發現了一些類似的文章,但我無法理解他們的答案中發生了什麼。我對C++比較陌生。雖然使用迭代算法可能會更容易,更高效,但我需要使用遞歸(這是一個賦值問題)。非常感謝幫助。在C++中使用遞歸函數循環使用一個deque

+0

您可以添加一些細節你的問題,我沒有得到這是什麼意思「*遞歸*」在這種情況下 –

+0

函數使用遞歸 – VVSTITAN

+0

並應它返回與參數傳遞相同的deque? –

回答

0

它應該是這樣的

deque <int> x; 
void Calc (deque <int> d){ 
    if (d.empty()) return; 
    x.push_back(d.front()); 
    d.pop_front(); 
    Calc(d); 
} 
+0

謝謝。它是否必須是一個Void返回類型?難道不可能返回一個deque?而不是虛空,我們不能以deque Calc(deque d)的形式擁有函數簽名?只是好奇地知道 – VVSTITAN

+0

是的,肯定它可以返回一個int或任何你想要的,但一定要做出正確的改變 –