有没有办法加快速度? (最大值 - 池)

时间:2015-07-19 11:06:33

标签: arrays matlab optimization max

这是代码:

{{1}}

2 个答案:

答案 0 :(得分:1)

您可以在一个电话中创建P:

%fastest solution for size(A,1)>size(A,2)
P = max(max(A,[],1),[],2)

%fastest solution for size(A,2)>size(A,1)
P = max(max(A,[],2),[],1)

对于大型矩阵,获得较小的中间结果(第一次最大调用的输出)更快

答案 1 :(得分:1)

一种方法是将前两个维度折叠为一个,并沿该维度最大化。不过,我还没有测试它的速度。

P = max(reshape(A,[],size(A,3)));