0
老實說,我不確定我在標題中使用的術語。遞歸和類實例遞歸的區別是什麼
基本上我很好奇,想知道喜歡的東西之間的區別:
class MyRecursiveClass
{
public:
int myData;
MyRecursiveClass* nextInLine;
int myRecursiveFunction(int data)
{
data+=myData;
if(nextInLine == null)
return data;
else
return nextInLine->myRecursiveFunction(data);
}
}
和
int staticRecursiveFunction(MyRecursiveClass* target, int currentData)
{
if(target == null)
return currentData;
currentData+=target->myData;
staticRecursiveFunction(target->nextInLine, currentData);
}
或
int otherStaticRecursiveFunction(MyRecursiveClass* target)
{
if(target == null)
return 0;
return target->myData + otherStaticRecursiveFunction(target->nextInLine);
}
基本上我想要的是在頭頂上的差異,如以及兩種方法之間差異的更好條件(當我嘗試t時,我感到茫然o谷歌)
此外,任何個人意見和/或偏好。我被學習遞歸更多的工具來完成工作,並希望聽到專業(和業餘)的意見。
同樣在遞歸結構良好讀數/方法,將不勝感激,雖然這不是該網站的目的(更何況我也不繼續問潛在的愚蠢的問題)
這是我的假設,但假設是所有人的母親......以及你知道俗話如何。我記得我的數據結構教師總是使用後一種方法,即使在處理樹/列表/哈希/排序等時。我曾經被迫使用一種方法或另一種方法的唯一時間是當我「需要」使用私有一類中的數據。我想知道是否還有其他情況比其他情況更適合個人喜好。 – 2012-03-26 05:29:49