matlab杂记

优化matlab中带有for循环的代码

对需要在for循环中使用的变量进行预分配内存。
可以使用zeros和ones函数给数值型数组分配空间,使用cell函数给单元数组分配空间,使用struct给结构体分配空间。
示例:

clear all;clc;
tic
y(1) = 1;
for i = 1 : 100000
    y(i + 1) = i * 10  + 0.9986 * y(i);
end
toc

在这里插入图片描述
对变量进行预分配内存

clear all;clc;
tic
y = zeros(1,100000);
y(1) = 1;
for i = 1 : 100000
    y(i + 1) = i * 10  + 0.9986 * y(i);
end
toc

在这里插入图片描述
可以很明显的看出来,对变量进行预内存分配可以提高运行效率。

元胞数组某一元素索引值的获取

假设有两个元胞数组a和b。a中存放的是特征的名称,b中存放的是特征对应的值。若要获取某一特征名对应的值时,可使用strcmp函数。具体如下

b = {1 2 3 4};
a = {'hahha','hgdioahg','湖广会馆','ying'};
idx = strcmp(a,'湖广会馆&#
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值