acces data for find tsp distance by matrix indexing

1 回表示 (過去 30 日間)
msr16
msr16 2019 年 1 月 28 日
コメント済み: msr16 2019 年 1 月 28 日
hi, i am have a distance matrix A=[0 2 5; 5 0 4; 6 3 0] and the route is in another matrix B=[1 2 3; 1 3 2; 2 1 3; 2 3 1]
by using the B i need to find the distance which is in A
Eg:
Taken the1st row of B [1 2 3] it means 1st row and 2nd column of A value taken (2) then 2nd row and 3rd column of A value taken(4) for each row of B wil get the value from A and store in another matrix C[2 4]
need code for this...
Thanks in Advance
  1 件のコメント
Stephen23
Stephen23 2019 年 1 月 28 日
Your question has nothing to do with cell arrays. MATLAB's basic data classes (e.g. cell arrays and numeric arrays) are explained in the MATLAB documentation:

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2019 年 1 月 28 日
編集済み: Walter Roberson 2019 年 1 月 28 日
sum(A(sub2ind(size(A), B(:,1:end-1), B(:,2:end))),2)
By the way your question has nothing to do with cell arrays.
  4 件のコメント
Walter Roberson
Walter Roberson 2019 年 1 月 28 日
You can extend the
sub2ind(size(A), B(:,1:end-1), B(:,2:end))
to have as many dimensions as you need. The first input is the array size; the second corresponds to the first index; the third corresponds to the second index. You can keep going with more indices. The N'th output element of
idx = sub2ind(size(A), P, Q, R)
would correspond to the linear index in A of A(P(N), Q(N), R(N)) such that A(idx(N)) would be the same as A(P(N), Q(N), R(N))
msr16
msr16 2019 年 1 月 28 日
Thankyou

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by