Which method to use, basic for loop or loop through values of a vector
Ältere Kommentare anzeigen
Vector ind has indices I want to loop through, x has values.
ind = [1 3 5];
x = [10 20 30 40 50 60 70];
ind_len = size(ind,2)
Approach 1: When using a for loop, should I use the basic incremental for loop, where I access each element of x with index values from ind vector
for i = 1:ind_len
x(ind(i))
end
Approach 2: Don't use ind_len length variable and assign ind vector to for loop
for i = ind
x(i)
end
Which method is efficient ?
Akzeptierte Antwort
Weitere Antworten (1)
KALYAN ACHARJYA
am 24 Dez. 2020
Bearbeitet: KALYAN ACHARJYA
am 24 Dez. 2020
More simpler, without loop
x(ind)
The 2nd approach (If I must have to choose one from above)
2 Kommentare
Thrisha R
am 24 Dez. 2020
KALYAN ACHARJYA
am 24 Dez. 2020
Bearbeitet: KALYAN ACHARJYA
am 24 Dez. 2020
Great one, once I run the code, as given in the question..
ind = [1 3 5];
x = [10 20 30 40 50 60 70];
ind_len = size(ind,2);
tic
for i = 1:ind_len
x(ind(i));
end
toc
tic
for i = ind
x(i);
end
toc
Elapsed time is 0.000021 seconds.
Elapsed time is 0.000016 seconds.
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!