在MATLAB中,如果要使用数组,要不要提前定义啊???

发布网友

我来回答

3个回答

热心网友

如果数组规模不是很大,直接存储即可,如下:DotZero = [ ] ;for .... .... DotZero = [DotZero, index] ; % index 为当前数据所在的列 ....end如果数组规模很大,应该预定义,如果知道你需要处理的数组的列数就好办了:DotZero = zeros(ColMax,1) ; % ColMax为列数for .... .... DotZero(k) = index ; % index 为当前数据所在的列 ....end然后将DotZero中不为0的元素提取出来即可!newDotZero=DotZero(DotZero ~= 0);当然用单元数组cell也可完成同样的任务!

热心网友

matlab中的数组不需要提前预定义和分配空间,可以动态的增加维数不过对于大型数据,建议提前分配空间,否则会严重影响运行速度的

热心网友

使用动态数组不如使用元胞数组,比如下面的例子>> marryCell=cell(1,2);>> marryCell{1}=rand(1,3);>> marryCell{1}=rand(1,5)marryCell = [1x5 double] []

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com