2025-11-20 06:25:53
递归像叠纸杯,每层都留个空,叠太高就塌了。电脑有个"栈空间",专门存递归的步骤。每层递归都占点地方,叠太多就放不下,程序直接报错叫"爆栈"。比如写个无限循环的递归,电脑根本叠不完,直接死机。
比如,每次递归调用,电脑会自动在内存里建个"小房间",放当前运行的代码和数据。如果房间叠太高,超过电脑能放的数量,就会"爆栈"。比如,如果每次递归调用占10字节,叠100层就需要1000字节,但电脑栈最多只能存500字节,这时候就会出错。有个真实案例:2019年有个程序用递归处理10万条数据,结果叠到第501层就爆栈,直接崩溃。所以设计递归时,得算好层数,要么改用循环,要么加限制。就像搭积木,搭太高容易倒,得看清楚底座够不够稳。
本题链接: