不用函數(shù)如何寫(xiě)遞歸?
具體原理就是用多層數(shù)據(jù)代替棧堆,循環(huán)實(shí)現(xiàn)函數(shù)調(diào)用。
步驟是:
1,先實(shí)現(xiàn)對(duì)應(yīng)遞歸函數(shù)
2,定義足夠多層的數(shù)據(jù),其中
數(shù)據(jù)類(lèi)型{
對(duì)應(yīng)遞歸函數(shù)的輸入數(shù)據(jù);
對(duì)應(yīng)遞歸函數(shù)的輸出數(shù)據(jù);
運(yùn)行步之間有聯(lián)系的數(shù)據(jù);
};
3,循環(huán)實(shí)現(xiàn)對(duì)應(yīng)遞歸函數(shù)每一步,其中
對(duì)應(yīng)遞歸函數(shù)的調(diào)用=跳進(jìn)下一層數(shù)據(jù),從第一步
對(duì)應(yīng)遞歸函數(shù)的返回=沒(méi)有上一層?結(jié)束循環(huán):(返回上一層數(shù)據(jù),從下一步開(kāi)始);
下面是3個(gè)具體實(shí)例的圖解:



標(biāo)簽: