有一个向量 x
,我必须添加一个元素 (newElem
)。
有什么区别 -
x(end+1) = newElem;
和
x = [x newElem];
?
最佳答案
x(end+1) = newElem
更健壮一点。x = [x newElem]
仅在 x
是行向量时有效,如果是列向量,则应使用 x = [x; newElem]
。然而, x(end+1) = newElem
对行向量和列向量都有效。
但总的来说,应该避免增长向量。如果您经常这样做,它可能会使您的代码陷入困境。想一想:增加数组涉及分配新空间、复制所有内容、添加新元素和清理旧的烂摊子……如果您事先知道正确的大小,那就太浪费时间了:)
关于matlab - Octave /Matlab : Adding new elements to a vector,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16188058/