有一个向量 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/

10-13 03:50