MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   可以简化此算法(写得更干净)吗? (https://www.labfans.com/bbs/showthread.php?t=23705)

poster 2019-12-10 20:48

可以简化此算法(写得更干净)吗?
 
我有这个算法,但是我不太热衷于许多if语句。

有人可以看到是否可以更简洁的方式编写此函数吗?

rand('twister',101) n = 10; f = A.^(0:n)./factorial(0:n); f = f/sum(f); n = 10000; Xi = 2; X = zeros(1,n); for i =1:n, dXi = (-1)^round(rand); Yi = Xi + dXi; if Yi > 0 & Yi = f(Xi), X(i) = Yi; Xi = Yi; else if rand


所有时间均为北京时间。现在的时间是 05:03

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.