フィールドのサイズが可変の場合、構造体の配列を事前に割り当てようとする価値はありますか? 例えば:
A.x = randn(1,randi(100));
A.y = randn(1,randi(100));
for k = 2:1000
A(k).x = randn(1,randi(100));
A(k).y = randn(1,randi(100));
end
最初のエントリを作成してから repmat を使用することもできますが、MATLAB は不明なフィールド長に対処する必要があります。私のテストでは、動的に成長させるだけと比較して、ほとんどまたはまったく改善されていません。ちなみに、角かっこ (例: A = [A nextEntry]) を使用すると、はるかに遅くなります。
これを高速化するために事前割り当てを行う賢い方法はありますか?