代码和运行结果如图所示,为什么第二种嵌套顺序比第一种嵌套顺序运行更快?
1条回答 默认 最新
- joel_1993 2021-10-29 21:02关注
因为你的第一个嵌套没有预分配H的大小,所以不断跑循环不断分配H大小,
等到第二个嵌套开始之前H已经分配好了大小,所以第二个嵌套不再需要再分配H,直接捡人家现成的当然跑得快clc;clear H = zeros(10000,5); tic; for i = 1:10000 for j = 1:5 H(i,j)=1/(i+j-1); end end toc; H = zeros(5,10000); tic; for i = 1:5 for j = 1:10000 H(i,j)=1/(i+j-1); end end toc;
你试试这个自然用时差不多了
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 对于相关问题的求解与代码
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料