【发布时间】:2015-10-26 04:51:00
【问题描述】:
我有一个不断增长的矩阵,例如一个 4×x 矩阵 A,其中 x 在一个循环中增加。我想找到最小的列 c ,其中之前的所有列都带有一个数字。矩阵 A 可以如下所示:
A = [1 2 3 4;
1 2 3 5;
1 2 3 1;
1 2 3 0];
c=3 和 x=4 的位置。
在循环的每次迭代中,A 的长度会增长,索引 c 的值也会增长。因此,在每次迭代中,我都想更新c 的值。我在 Matlab 中编码的效率如何?
【问题讨论】:
-
如果您在
A的末尾添加列,x仍将是 3。您将何时以及如何更新第 4 列? -
再一次,如果第 4 列没有改变,
c将如何改变以使该列中的所有元素都具有相同的值? -
@beaker 第 4 列也随着矩阵的增长而变化。例如,当 x 为 100 时,c 可能为 90。我不确定我的观点是否正确。 c 是最后一个全等列的索引。
-
@Elnaz 如果您的矩阵是
4 by x,那么您只有 4 列。因此,前 90 列永远不会相等。 (只是试图解释为什么您的问题令人困惑)也许您有一个大小为r by x的矩阵?并且可以任意增长? -
@Elnaz 向我们展示上面的矩阵
A的增长示例。
标签: arrays performance matlab matrix