gpt4 book ai didi

matlab - 从开始和结束数字的向量创建一个序列

转载 作者:太空宇宙 更新时间:2023-11-03 19:48:43 26 4
gpt4 key购买 nike

如果我在 Matlab 中以矢量化方式拥有子序列的起始和结束数字向量,如何创建一个序列?

示例输入:

A=[12 20 34]  
B=[18 25 37]

我想得到(为清楚起见,使用空格):

C=[12 13 14 15 16 17 18    20 21 22 23 24 25    34 35 36 37]

最佳答案

假设AB升序排列,B(i) < A(i+1)然后持有:

idx = zeros(1,max(B)+1);
idx(A) = 1;
idx(B+1) = -1;

C = find(cumsum(idx))

要解决 Dennis 在评论中提到的问题:

m = min(A)-1;
A = A-m;
B = B-m;

idx = zeros(1,max(B)+1);
idx(A) = 1;
idx(B+1) = -1;

C = find(cumsum(idx)) + m;

关于matlab - 从开始和结束数字的向量创建一个序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30645446/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com