Re: [問題] 兩個數列 element相減最小值求法已回收
※ 引述《soda (公館陽光研究生)》之銘言:
: 假如 A數列 A=[1 2 3 4 5];
: B數列 B=[6 7 8 9 3.3];
: 數列 A 跟數列 B 的所有element相減 最小為 |A(3)-B(5)|=|3-3.3|= 0.3
: 則讓 C = A(3)=3
: 想請問matlab是否有此指令 可直接求得值
: 或是應該如何有效率的完成此程式?
: 謝謝
A=[1 2 3 4 5];
B=[6 7 8 9 3.3];
AA=ones(5,1)*A;
BB=B'*ones(1,5);
er=abs(AA-BB);
[i,j]=find(er==min(min(er)));
c=AA(i,j)
測試:
tic
A=rand(1,3000);
B=rand(1,3000);
AA=ones(3000,1)*A;
BB=B'*ones(1,3000);
er=abs(AA-BB);
[i,j]=find(er==min(min(er)));
c=AA(i,j)
toc
執行結果
c =
0.24261756307319
Elapsed time is 1.386311 seconds.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.121.125.231
推
12/15 10:59, , 1F
12/15 10:59, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章