Inserting zeros into another array at values in the second array

2 次查看(过去 30 天)
Hi, Lets have the following arrays:
A = [8 2 3 5 5 6 7 8 9];
B = [1 3 2 3]
Now, I want to write a code which can insert zeros into A after every location in B. So, my final output would be
F = [8 0 2 3 5 0 5 6 0 7 8 9 0]
Please let me know, what is the most efficient way of coding to implement this?
Thanks

回答(2 个)

Matt J
Matt J 2023-11-24
编辑:Matt J 2023-11-24
A = [8 2 3 5 5 6 7 8 9];
B = [1 3 2 3];
F=nan(1,numel(A)+numel(B));
F(cumsum(B)+(1:numel(B)) )=0;
F(isnan(F))=A
F = 1×13
8 0 2 3 5 0 5 6 0 7 8 9 0

Image Analyst
Image Analyst 2023-11-24
This looks like a homework problem. If you have any questions ask your instructor or read the link below to get started:
Obviously we can't give you the full solution because you're not allowed to turn in our code as your own.
To learn fundamental concepts, invest 2 hours of your time here:

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

标签

产品


版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by