matlab 递归限制,matlab 递归深度问题

matlab 递归深度问题

mip版  关注:259  答案:2  悬赏:20

解决时间 2021-01-18 14:23

13928c54b710a7f3ce9710c677aee4fa.png

已解决

2021-01-17 18:00

matlab 在并行操作中,对多个矩阵进行特征分解,出现了这个:Maximum recursion limit of 500 reached. Use set(0,'RecursionLimit',N)

to change the limit. Be aware that exceeding your available stack space can crash MATLAB and/or your computer.问题

随后我在代码中加入set(0,'RecursionLimit',1000),然后再次运行,还是报这个这个错误?而且还是到达500上限,这种情况该怎么处理呢?

最佳答案

99bb14fa2a45a8f4a433790952a4ac0c.png

2021-01-17 19:35

者,不用递归。 你的else只执行一次。就是那个表达式。 而用递归的话,调用else后就是调用下一轮的S函数。

全部回答

46dbdb377924df70b6380e9608fc5f56.png

1楼

2021-01-17 20:02

就是自己调用自己,跟普通的递归道理相通。比如计算阶乘:

% by lyqmath

function main()

clc; clear all; close all;

num = 6;

y = compute_prod(num)

function y = compute_prod(num)

if num == 1

y = 1;

return;

else

y = num*compute_prod(num-1);

end

结果

y =

720

>> prod(1:6)

ans =

720

>>

我要举报

如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

点此我要举报以上信息!

推荐资讯

大家都在看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值